_ _______________________________________ _ -*4*- `^°*;:,.> * * * * * PHP3 (ETHIOPIA) * * * * * <.,:;*°^` ___________________/¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\_____________________ ******************************************** ********************PHP3******************** ******************************************** Ndt : Je suis confus et honteux, cet article m'avait ete envoye par ETHIOPIA dont je n'avais pas note l'adresse email, du coup j'ai ete tres emmerde pour mettre les credits. A l'origine ce petit tut expliquait comment installer php/apache/mysql sur linux et j'y ai ajoute la meme explication pour windows NT. ********* * Intro * ********* Aujourd'hui quand on surfe sur le web, on remarque que de plus en plus de sites sont dynamiques. Fini les pages simples écrites uniquement en HTML. Nan maintenant il faut rajouter du javascript, des applets java, on va meme à faire ces site en flash ou en .asp... mais aussi en PHP3. Pkoi choisir le PHP3? Tout d'abord passke son apprentissage est très rapide meme si vous êtes une tanche en programmation, n'en parlons pas pour ceux qui connaissent l'HTML :) ******** * PHP3 * ******** Le langage fonctionne identiquement avec différent servers web et sur différents système dont Windows, UNIX et MAC. Comme le PHP3 a été écrit pour la création de pages web, il est inspiré de langages comme le JAVA, PERL, C. Sachez que c 3derniers langages n'ont pas été écrit pour faire des pages web,mais peuvent très bien s'utiliser sur une pages..Mais encore une fois le PHP3 "regroupe" ces 3 langages dans un langage simplifié. La particularité du PHP3 par rapport au javascript est que le PHP3 est éxécuté du coté du server web et non pas par le browser comme le fait le javascript. Sachez aussi que ce le PHP3 est distribué gratos sous la license GNU GPL pour linux :) **************** * Installation * **************** Avant que l'on puisse jouir de ce super langage, il faut quand meme installer un minimum de programmes si vous avez votre propre serveur: -MySQL: Le serveur de base de données -Apache: Le serveur web (dont on parlera au prochain article) -PHP3: Le moteur Vous pourrez trouver normalement tout ces packages avec votre distrubution linux, mais je vais quand meme vous donner l'url de chaque programme. Pour l'installation Windows NT (oubliez 95/98), c'est les memes composants qui sont dispos en version win32 sur les memes sites. ********* * MySQL * ********* D'abord faut aller récupérer les sources sur http://www.mysql.net ou www.php.net si vous les avez pas sur CD Placez les ensuite par ex. dans /usr/local: $ cp mysql-3.22.25.tar.gz /usr/local décompressez-les: $ cd /usr/local $ tar xzfv mysql-3.22.25.tar.gz $ cd mysql-3.22.25 Compilez: $ ./configure $ make $ make install Now ca se complique un peu car il faut lancer un script qui va créer la base de donnée initiale de MySQL: $ /usr/local/mysql-3.22.25/scripts/mysql_install_db Le server est commandé par un script qui se trouve ici: $ /usr/local/mysql-3.22.25/support-files/mysql.server Maintenant il faut rendre le script éxécutable: $ chmod +x /usr/local/mysql-3.22.25/support-files/mysql.server Vala normalement MySQL est bien installé, pour vous en assurez tapez: local/mysql-3.22.25/support-files/mysql.server start et si vous voyez le msg "Starting mysql daemon with database from /usr/local/mysql/var" c que ca marche :) Une fois le serveur lancé vous pouvez vous y connecter en utilisateur root (root étant l'administrateur de MySQL) sans mot de pass. Pour plus de sécurité on va donner un mot de passe à l'utilisateur root: $ /usr/local/mysql/bin/mysqladmin -u root password votremotdepasse Voilà, now c un peu plus sécurisé.. :) *************** * Apache-php3 * *************** Allez prendre les sources sur www.apache.org ou www.php.net. Now on configure Apache pour placer: - Les fichiers de config dans /etc/httpd - Les données qui seront installées dans /home/httpd - Les logs dans /var/log/httpd - Le reste sera installé par défaut dans /usr/local/apache tar xzfv apache_1.3.6.tar.gz $ cd apache_1.3.6.tar.gz $ ./configure --sysconfdir=/etc/httpd --datadir=/home/httpd --logfiledir=/var/log/httpd On va maintenant configurer PHP3 comme module d'apache avec le support MySQL: $ cd .. $ tar xzfv php-3.0.11.tar.gz $ cd php-3.0.11 $ ./configure --with-mysql --with-config-file-path=/etc/httpd --with-apache=../apache_1.3.6 --enable-track-vars On installe PHP3... $ make $ make install Il faut à nouveau configurer Apache pour prendre en charge le module et l'installer. N'oubliez surtout pas de copier le fichier config de PHP3: $ cd ../apache_1.3.6 $ ./configure --sysconfdir=/etc/httpd --datadir=/home/httpd --logfikedir=/var/log/httpd --activate-module=src/modules/php3/libphp3.a $ make $ su $ make install $ cd ../php-3.0.11 $ cp php3.ini-dist /etc/httpd/php3.ini Il ne reste plus qu'a éditer le fichier config principal d'apache et éventuellement celui de PHP3 avant de lancer le serveur. Editez le fichier "/etc/httpd/httpd.conf" et vérifiez que le port est bien 80 et modifiez cette ligne: DirectoryIndex index.html index.php3 Supprimez la et remplacez la par: AddType application/x-httpd-php3 .php3 AddType application/x-httpd-php3-source .phps La partie installation est maintenant terminée, il ne reste plus qu'à tester.. :) Apache ce lance exactement comme MySQL, c à dire par un script: $ /usr/local/apache/bin/apachectl start Sur windoze NT l'installation se fait betement : -Telecharger apache pour win32 depuis www.apache.org -Installer apache sur une autre partition que la partition systeme (evitez les partoches NTFS). -Telecharger PHP3 pour win32 depuis www.php.net -Installer php dans un rep php3 (sur le meme lecteur que celui qui contient l'installation d'apache) -Telecharger Mysql pour win32 depuis www.mysql.net -Installer MySQL pour win32 (on n'a pas le choix de la partition mais si vous y arrivez, mettez ca sur une autre que la partition systeme, ca fragmente vite..) Les trois elements sont installes, c'etait le plus facile, la configuration est une autre histoire : Configuration de apache : Apache peut s'installer comme un service depuis le menu demarrer, alors on va pas se fatiguer a rentrer ca par une ligne de commande. Demarrer/programme/apache/install apache as a service (NT Only) Et hop, pour demarrer/arreter apache on passe maintenant par "services" dans le panneau de config. Mais avant de tester il va falloir mettre les bonnes infos dans le fichier httpd.conf. Modifier cette ligne : DirectoryIndex index.html index.htm index.php index.php3 et ajouter ces lignes (en specifiant la location de VOTRE interpreteur php3) : ScriptAlias /php3/ "c:/php3/" AddType application/x-httpd-php3 .inc AddType application/x-httpd-php3 .htm AddType application/x-httpd-php3 .php AddType application/x-httpd-php3 .php3 AddType application/x-httpd-php3 .phtml AddType application/x-httpd-php3-source .phps Action application/x-httpd-php3 "/php3/php.exe" Note : ne pas oublier de remplacer le "\" par un "/" pour le chemin d'acces. Pour configurer php3, il va falloir renommer le fichier php32ini.quelquechose en php3.ini et l'editer avec notepad. Les lignes a decommenter sont les suivantes (supprimez le ";") : extension=php3_mysql.dll extension=php3_gd.dll MySQL doit etre installe comme un service pour que le trio fonctionne bien (ca ne marche que sur NT), pour cela, ouvrez une commande msdos, rendez vous dans le repertoire MYSQL/BIN et tapez : mysqld --install Dans le panneau de config, ouvrez le module services et verifiez que apache et mysql sont bien dans la liste. Arretez les et relancez les (juste au cas ou..). Voilà le server est lancé, pour tester si ca marche, créez un fichier nommé test.php3 dans votre rep htdocs contenant ceci: Ensuite vous lancer netscape et allez sur http://localhost/test.php3 et si tout marche bien vous devrez voir le msg que vous avez entré dans test.php3 avec a la suite toutes les variables systemes concernant php3, notamment pour MySQL. Article posté par Ethiopia@mcm.net