(tuto) Virez EasyPHP et prenez le contrôle!

Virez EasyPHP et prenez le contrôle! (tuto) - PHP - Programmation

Marsh Posté le 30-10-2003 à 15:07:09    

Fallait que quelqu'un se tape le sale boulot alors je m'y colle :o
 
Note: si vous n'aimez pas mon tuto pourri, vous pouvez toujours vous rabattre sur ce lien fourni gracieusement par Gilbert Gosseyn sur un autre topic.
 
L'installation qui vous est proposée est à l'intention des développeurs (tout comme EasyPHP), et non pour un serveur public :)
 
Edit: la version Apache2/PHP5 par Gizmo :jap:
 
Merci au passage à ceux qui sont intervenu de près ou de loin dans l'élaboration, mises à jour ou corrections de ce tuto :jap:
 
Le but de ce topic: vous ôter l'envie d'utiliser EasyPHP et franchir le cap pour avoir la maîtrise de votre configuration, et gérer chacun des logiciels (Apache, PHP, MySQL) indépendamment des autres ou presque.
 
Comme EasyPHP est un truc 100% Windows, je vais prendre le point de vue de l'utilisateur Windows (ce que je suis moi-même d'ailleurs).
 
Choix des versions:
D'abord, il vaut mieux éviter de prendre la dernière version d'Apache (la 2.x) car son architecture a été revue au niveau du multithreading, ce qui n'est pas encore le cas de PHP (mais ce le sera dans la version 5). Autant éviter les problèmes et utiliser une configuration qui a fait ses preuves.
 
La dernière version dite stable d'Apache dans la branche 1.3.x est la 1.3.34. C'est celle que nous allons télécharger, par exemple ici (lien direct)
 
Pour PHP, la dernière version disponible au moment de la dernière édition de ce tuto est la 4.4.2. Comme vous pourrez le lire dans la doc, le support Apache 2 est expérimental. Je vous recommande le package ZIP et non le fichier d'installation standard car le ZIP contient beaucoup plus de fichiers, modules, etc.: http://be.php.net/get/php-4.4.2-Wi [...] m/a/mirror
 
Enfin, MySQL. Là, à vous de voir quelle version vous allez utiliser. La série 3.23 est certainement encore très répandue, la 4.0 a fait également son nid, et la 4.1 poursuit l'oeuvre, et la 5.0 est la dernière arrivée au niveau stable.  Allez sur http://dev.mysql.com/ et suivez les liens sous la mention MySQL Products/Database servers à gauche, vous arriverez sur la liste des différents packages disponibles pour différents OS (Windows n'est pas le premier de la liste ;)) puis vous devrez choisir un miroir. Cette fois, vous pouvez prendre l'installeur, il fera tout ce qu'il faut.
 
Une fois tout cela récupéré, il faut installer. L'ordre importe peu car chaque package est indépendant. Notez bien où vous installez ces applications car il faudra aller y jeter un oeil plus tard.
 
Une fois tout installé, commençons les grandes manoeuvres:
 
MySQL
 
Sous Windows NT/2000/XP
 
L'installeur MySQL ne prend pas en charge la création du service comme le ferait Apache. Ce qui implique que le jour où vous désinstallez MySQL, le service sera toujours là, autant le savoir. Cependant, il existe un moyen simple de le retirer que j'expliquerai plus loin.
 
Créer un service manuellement ne sera pourtant pas à l'ordre du jour. Un utilitaire livré avec MySQL version Windows vous dépannera.  Allez dans le répertoire bin en dessous du répertoire d'installation, vous trouverez un outil nommé winmysqladmin.exe. Démarrez le. Une fenêtre va apparaître un bref instant, puis il vous sera demandé un login d'administrateur, lequel sera créé dans la base de données par défaut installée avec MySQL.
 
Une fois ce login entré, il ne subsistera de l'application qu'une icône dans la traybar, de type feu de signalisation. Son état à rouge indique que le serveur ne fonctionne pas, ou du moins que le programme n'y est pas connecté. Dans notre situation, c'est simplement que le serveur ne tourne pas encore. Cliquez sur cette icône, voyez le menu WinNT, et choisissez Install the service dans le sous-menu. Une petite boîte de dialogue vous demandera confirmation. Cette confirmation donnée, MySQL apparaîtra dans la liste des services et démarrera automatiquement à chaque boot de la machine. Si cela ne vous plaît pas, modifiez les paramètres de démarrage du service et démarrez le ensuite. Vous verrez que le feu passe au vert, confirmation que MySQL a bien démarré.
 
Dans le même menu, une fois que le service est installé, vous aurez à disposition l'option inverse: retirer le service. A ne pas oublier lorsque vous désirez désinstaller MySQL.
 
Une fois que MySQL est bien installé, vous n'avez plus besoin de l'outil d'administration que j'ai mentionné, et vous pouvez vous en remettre à votre logiciel habituel pour gérer vos bases de données (Eskuel, MyPHPAdmin, MySQL-Front, etc.)
 
Sous Windows 95/98/ME
 
Il n'y a pas de service au même sens que sous la famille NT. Au choix vous lancez manuellement le serveur ou automatiquement au démarrage de la machine. Pour cela, il y a le dossier Démarrage.
 
Notez que quelque soit votre Windows, winmysqladmin.exe se glissera dans le dossier de démarrage. Si cela vous gêne, n'oubliez pas de le retirer.
 
MySQL: Le superflu
 
Sous Windows, le fichier de configuration se nomme my.ini et est localisé dans le répertoire principal de Windows (tout comme php.ini).
 
En éditant le fichier, vous pouvez choisir d'activer les tables InnoDB (si ce n'est déjà fait comme c'est le cas sur la version 4.0 de MySQL et suivantes) ou encore de changer le path d'accès aux tables parce que vous souhaitez tout simplement les loger ailleurs. Si vous voulez changer vos tables de place, n'oubliez pas d'arrêter votre serveur MySQL en premier lieu. Notez bien ensuite que tout répertoire référencé par my.ini doit exister, sinon le serveur ne voudra pas démarrer (cte feignasse :o).
 
Pour déménager vos tables de type MYISAM ainsi que les tables de sécurité (qui sont MYISAM également), vous devez modifier le paramètre datadir.
 
Avec MySQL, vous trouverez installés dans le répertoire racine de MySQL quelques exemples de fichiers de configuration. Malheureusement, Windows les prend pour des fichiers de type Speedial et ils apparaissent comme des shortcuts. Pour pouvoir en visualiser le contenu, faites glisser le fichier dans votre éditeur texte favori.
 
La partie qui nous intéresse pour activer InnoDB (qui gère relations entre tables et les transactions), voici la partie qui nous intéresse:
 

Code :
  1. # Uncomment the following if you are using Innobase tables
  2. #innodb_data_file_path = ibdata1:100M
  3. #innodb_data_home_dir = c:ibdata
  4. #innodb_log_group_home_dir = c:iblogs
  5. #innodb_log_arch_dir = c:iblogs
  6. #set-variable = innodb_mirrored_log_groups=1
  7. #set-variable = innodb_log_files_in_group=3
  8. #set-variable = innodb_log_file_size=5M
  9. #set-variable = innodb_log_buffer_size=8M
  10. #innodb_flush_log_at_trx_commit=1
  11. #innodb_log_archive=0
  12. #set-variable = innodb_buffer_pool_size=16M
  13. #set-variable = innodb_additional_mem_pool_size=2M
  14. #set-variable = innodb_file_io_threads=4
  15. #set-variable = innodb_lock_wait_timeout=50


 
Vous l'aurez sans doute remarqué, le symbole de commentaire n'est pas le même que pour la configuration de PHP: il s'agit ici d'un dièse (#), comme dans Apache.
 
Ajoutez ces lignes sous la section [mysqld] dans my.ini et retirez les dièses. Assurez-vous que les répertoires pointés existent réellement, et redémarrez votre serveur MySQL. S'il a redémarré sans erreur, vous pouvez être satisfait: je n'y suis moi-même probablement jamais arrivé du premier coup malgré de nombreuses installations effectuées :whistle:
 
A partir de MySQL 4.0, InnoDB est activé par défaut. Si vous souhaitez le désactiver, décommentez (ou ajoutez si elle n'existe pas déjà) la ligne suivante:

Code :
  1. skip-innodb


 
 
PHP
 
Pour l'instant, vous allez vous contenter de dézipper l'archive que vous avez downloadée, et placer son contenu à l'endroit du disque qui vous sied le mieux. Chez moi, j'ai choisi c:\servers\php comme répertoire de base.
 
Apache
 
Pour Apache en lui-même, il n'y a rien à faire. Si vous êtes arrivés à la fin de l'installation, Apache est installé, configuré et lancé comme service si vous êtes sous Windows NT/2000/XP. Sous Windows 95/98/ME, il vous faudra l'installer dans le dossier Démarrage si vous voulez le voir se lancer à chaque démarrage de la machine (enfin je le suppose, je n'ai jamais essayé).
 
Intégration de PHP dans Apache
 
Il faut maintenant intégrer PHP à Apache et faire (re)démarrer Apache sans heurt. Ce n'est pas compliqué. Allez dans le sous-répertoire conf en dessous d'Apache et ouvrez le fichier httpd.conf qui renferme la configuration du serveur Apache.
 
D'un autre côté, allez dans le répertoire où vous avez installé PHP, et repérez le fichier php4apache.dll.  Ce fichier est le module que vous allez ajouter à la configuration d'Apache afin que celui-ci démarre en utilisant cette DLL pour interpréter vos scripts.  Vous me direz, et php.exe alors? Et bien php.exe, c'est sans doute plus facile et rapide à installer, mais le problème est qu'entre chaque chargement de page, il est viré de la mémoire, et vous perdrez du même coup les infos de sessions ou toute autre information que vous vouliez stocker au niveau du serveur PHP, d'où le choix plus judicieux de la DLL qui elle, restera et fonctionnera en mémoire tant qu'Apache lui-même y sera.
 
La configuration d'Apache est divisée en différentes sections. Histoire de rester "dans la norme", scrollez vers le bas et cherchez un bloc de LoadModule. A la fin, vous y ajouterez le bloc suivant:
 

Code :
  1. LoadModule php4_module c:/servers/php/sapi/php4apache.dll


 
Notez que chez moi, PHP est installé dans le répertoire C:/servers/php, il vous faudra faire la modification nécessaire pour référencer votre propre répertoire d'installation. Attention: si il y a un espace dans le chemin d'accès, veillez à encadrer ce chemin de guillemets afin qu'il soit pris complètement en compte.
 
Juste après dans le fichier de configuration, vous trouverez une série de AddModule. C'est la seconde partie à configurer. Ajoutez la ligne suivante:
 

Code :
  1. AddModule mod_php4.c


 
Directement en dessous, vous pouvez ajouter la séquence suivante:
 

Code :
  1. <IfModule mod_php4.c>
  2.     AddType application/x-httpd-php .php
  3. </IfModule>


 
Faites maintenant une recherche sur: "<IfModule mod_dir.c>"
 
Vous trouverez une déclaration DirectoryIndex (le fichier lu par défaut quand vous tapez une url sans nom de fichier dans votre browser). Vous devez y ajouter un index.php et la ligne ressemblera à ceci:
 

Code :
  1. DirectoryIndex index.php index.html


 
Le fait de placer index.php devant index.html indique que index.php aura la précédence si les deux existent dans le répertoire correspondant à l'url tapée dans votre browser.
 
Configuration d'Apache
 
La chose suivante donc il faut vous occuper concernant Apache est le DocumentRoot, c'est à dire l'endroit où sont stockées les pages webs servies par Apache. Faites une recherche sur DocumentRoot et modifiez la déclaration de façon à pointer vers le répertoire de votre choix.
 

Code :
  1. DocumentRoot "e:/www"


 
Et tant que nous y sommes, deux dizaines de lignes plus bas:
 

Code :
  1. #
  2. # This should be changed to whatever you set DocumentRoot to.
  3. #
  4. <Directory "e:/www">


 
Retenez bien ce pointeur sur le DocumentRoot, il englobe des informations d'autorisations qui nous intéressent pour la partie superflue ;)
 
Apache: Le superflu
 
.htaccess
 
Les fichiers .htaccess vous donnent plus de souplesse par rapport à la configuration d'Apache, telle que figée dans httpd.conf. Vous pouvez grâce à eux gérer la configuration répertoire par répertoire, sans avoir à redémarrer le serveur.
 
Pour pouvoir autoriser la possibilité d'utiliser les fichiers .htaccess, il vous faut retourner au pointeur sur le DocumentRoot mentionné précédemment. Deux lignes plus bas, vous pouvez modifier le paramètre AllowOverride comme ceci:
 

Code :
  1. AllowOverride All


 
Cette option donne le maximum de pouvoirs aux .htaccess. Reportez vous au manuel d'Apache pour plus d'infos sur le sujet, je suis loin de maîtriser ce sujet précis [:joce]
Attention toutefois! Il est largement préférable de limiter au maximum ce que vous placez comme paramètres. Un Limit au lieu de All, pour commencer, est préférable.
 
Afficher le contenu des répertoires
 
Si vous voulez autoriser l'affichage de répertoires au niveau du fichier conf d'Apache, c'est très simple: la ligne juste au-dessus d'AllowOverride (Options) vue plus haut vous permettra cette possibilité. Ajoutez Indexes à côté de FollowSymLinks. Ceci n'est toutefois pas recommandé sur un serveur de production!
 
URL rewriting
 
L'URL rewriting consiste à faire passer vos pages bourrées de paramètre en de simples urls HTML. C'est simpliste comme définition et les possibilités sont bien évidemment beaucoup plus vastes. Voyez par exemple le forum afficher un lien
 

Code :
  1. http://forum.hardware.fr/hardwaref [...] _sujet.htm

qui sera transformé en

Code :
  1. http://forum.hardware.fr/forum1.php3?cat=10


La sous-chaîne "programmation" sera passée en argument à forum1.php3 sous la forme cat=10. Tout cela en fait pour rendre une indexation plus aisée par les moteurs de recherche, ou tout simplement pour rendre moins cryptique une url d'un sujet ou d'une catégorie donnée.
 
Voici comment activer l'url rewriting:
Dans votre fichier httpd.conf, faites une recherche sur rewrite, vous trouverez les deux lignes suivantes (mais ne se suivent pas!)
 

Code :
  1. #LoadModule rewrite_module modules/mod_rewrite.so
  2. #AddModule mod_rewrite.c


 
Retirez le commentaire (#) pour ces deux lignes.
 
Si vous avez l'intention d'utiliser les .htaccess pour jouer avec l'url rewrite engine, retournez sur la ligne de l'AllowOverride lié à votre <Directory "votre documentroot"> et ajoutez FileInfo à côté de Limit, si vous avez spécifié Limit. Si vous avez spécifié All, vous ne devez pas modifier la ligne.
 

Code :
  1. AllowOverride Limit FileInfo


 
Voici un petit exemple d'htaccess tiré de mon site web:
 

Code :
  1. RewriteEngine On
  2. RewriteRule ^projects/projects-([A-z]+).html$  projects/projects.php?prj=$1
  3. RewriteRule ^hardware/hardware-([0-9]+).html$  hardware/hardware.php?test=$1
  4. RewriteRule ^citations/citations-([0-9]+).html$  citations/citations.php?cat=$1
  5. RewriteRule ^(.+).html$  $1.php


ce qui va effectuer les réécritures de lien suivantes:
 
projects/projects-AR.html -> projects.php?prj=AR
hardware/hardware-1.html -> hardware/hardware.php?test=1
citations/citations-1.html -> citations/citations.php?test=1
.html -> .php
 
Bien entendu, il faut que votre site affiche les liens de la partie gauche de l'htaccess, cela ne se fait pas tout seul!  Pour ma part, mon site est prévu pour gérer les deux, histoire d'avoir la possibilité de switcher dans l'une ou l'autre configuration à ma convenance (par plaisir de l'expérimentation).
 
Configuration de PHP
 
La partie Apache est terminée, mais le moment de démarrer votre serveur web n'est pas encore venu. En effet, il reste encore à faire deux petites manipulations sur PHP.
 
1) Rendez vous dans votre répertoire PHP. Vous y trouverez un fichier nommé php4ts.dll. Copiez-le dans le répertoire SAPI où se trouve php4apache.dll, librairie qui sera chargée avec Apache. Le fichier que vous venez de copier est nécessaire à son exécution.
 
2) Dans le même répertoire PHP, vous trouverez un fichier nommé php.ini-recommended, copiez le dans le répertoire Windows sous le nom php.ini.
 
Editez maintenant ce fichier.
 
Le but de la manoeuvre est d'ajuster le niveau de rapport d'erreurs afin qu'il renvoie un maximum d'erreurs/warning et notifications. Vous n'y êtes pas obligés, mais EasyPHP est utilisé généralement pour faire du développement, il convient donc de configurer PHP pour le développement, à savoir faire apparaître tous les messages possibles afin d'éviter les problèmes les plus basiques.
 
En principe, c'est déjà fait, il s'agit donc surtout d'une vérification. Aux alentours de la ligne 250, vous arriverez au chapitre de la gestion d'erreur. Mettez en commentaire (avec un point-virgule) la ligne suivante si elle ne l'est pas:
 

Code :
  1. error_reporting = E_ALL & ~E_NOTICE


 
Et retirez le point-virgule ici:
 

Code :
  1. ;error_reporting  =  E_ALL


 
La ligne activée signifie: affiche TOUTES les erreurs. Ceci a pour but de forcer les programmeurs PHP à prendre de bonnes habitudes: déclarer leurs variables, en leur assignant une valeur en début de script, avant que la variable en question soit lue pour une quelconque raison. Si ce n'est fait, une notice apparaîtra pour indiquer une utilisation de variable avant initialisation.
 
Une autre option utile pour le développement est display_errors. Elle affiche les problèmes en relation avec la configuration lorsqu'ils surviennent.
 

Code :
  1. display_errors = On


 
Les sessions:
 
La configuration par défaut ne pourra pas utiliser les sessions. Soyez tranquille toutefois, il s'agit en fait d'un simple problème de chemin d'accès. Faites une recherche sur session.save_path (aux environs de la ligne 816), et modifiez son paramètre de façon à le faire pointer vers un répertoire temporaire existant: c:/temp par exemple.
 

Code :
  1. session.save_path = c:/temp


 
Problèmes de variables non déclarées?
 
Un des problèmes les plus courants avec les anciens scripts, c'est qu'ils ne sont pas compatibles avec la dernière configuration recommandée par les auteurs de PHP. Cette configuration évolue, notamment au niveau de la sécurité. Donc, à chaque nouvelle installation, il se peut que le php.ini livré avec, soit différent du précédent.
 
Lorsque vous lancez votre script et que pléthore de messages d'erreur PHP fleurissent sur votre page web, la majorité indiquant que des variables n'ont pas été déclarées, c'est que votre fichier php.ini a subi une mise à jour par les auteurs de PHP, avec un impact important: les variables définies d'après un GET ou un POST n'existent plus.
 
Un paramètre de php.ini, nommé register_globals vaut off, alors qu'auparavant, il valait on. Ainsi, lorsqu'il vaut on, en cliquant par exemple sur une URL avec des paramètres, la page pointée reçoit ces paramètres directement sous forme de variable PHP. Si l'url contenait user=1, PHP créait une variable nommée $user, et lui affectait la valeur 1.  Ceci a un inconvénient majeur: si un petit malin décide d'ajouter un paramètre manuellement dans l'url, PHP crée automatiquement une variable équivalente. Et si elle a le malheur de porter le même nom qu'une variable interne que vous avez vous-même créée, alors le petit malin peut influer sur le comportement de votre script. Pire encore: s'il connaît le script que vous utilisez, il n'aura même pas à se casser la tête pour savoir comment vous pirater.
 
La bonne pratique requiert donc de laisser register_globals à off et d'utiliser les tableaux $_GET et $_POST (et donc d'upgrader vos scripts afin qu'ils soient plus sûrs). Ne vous dites surtout pas que votre site n'a pas d'importance et que personne de mal intentionné ne s'arrêterait pour vous faire du mal: s'ils en ont la possibilité, ils le feront. Pour grossir leurs statistiques évidemment (ils se disent entre eux que ça enlarge leur pénis mais ça reste à prouver).
 
L'autre bonne pratique, c'est d'afficher TOUS les messages d'erreur, y compris les notifications, et de programmer votre script de façon à ce qu'aucun message n'apparaisse. A ce moment-là, vous aurez fait un pas décisif dans la bonne direction.
 
 
A partir de là, vous avez une installation standard, prête au développement, vous pouvez démarrer votre serveur Apache.
 
PHP: Le superflu
 
La configuration de PHP est donc localisée dans le répertoire Windows, sous le nom php.ini.  Dans ce fichier, vous pouvez changer le niveau de rapport des erreurs, étendre les capacités de PHP en rajoutant des modules, etc etc.
 
Je vais d'ailleurs me limiter à ces modules. Si par exemple, vous voulez prendre en charge la génération d'images, vous avez besoin du module GD.
 
Faites une recherche sur le mot "extension_dir". Vous tomberez sur un paramètre qui référence le répertoire où se trouvent les extensions. Indiquez-y une référence absolue vers ce répertoire. Chez moi, ça donne ceci:
 

Code :
  1. extension_dir = "c:/servers/php/extensions"


 
Plus bas dans le fichier de configuration (la ligne 546 dans la mienne), il y a une petite section intitulée "Windows extensions". Vous l'aurez compris, cette portion est spécifique à Windows. Sous Linux, le module PHP est compilé avec tout ce dont on a besoin.
 
Il suffit de retirer le point-virgule pour le module dont vous avez besoin. Dans le cas présent, le module GD2 (la version 1 qui gérait les GIF a été retirée pour des problèmes de brevets) est référencé par la ligne:
 

Code :
  1. extension=php_gd2.dll


 
Une fois le point-virgule retiré, sauvez votre fichier, redémarrez Apache, et les fonctionnalités offertes par GD seront disponibles.
 
N'hésitez pas à me faire part de vos remarques et/ou suggestions pour améliorer ce tuto :jap:


Message édité par drasche le 26-01-2006 à 15:28:38

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 30-10-2003 à 15:07:09   

Reply

Marsh Posté le 30-10-2003 à 15:10:45    

Très intéressant. Merci bcp. :)

Reply

Marsh Posté le 30-10-2003 à 15:54:09    

parfait. merci pour ton travail

Reply

Marsh Posté le 30-10-2003 à 16:13:07    

merci :jap:


---------------
IVG en france
Reply

Marsh Posté le 30-10-2003 à 16:39:45    

[:drapo]

Reply

Marsh Posté le 30-10-2003 à 17:01:32    

drapal

Reply

Marsh Posté le 30-10-2003 à 19:13:07    

Update pour la désinstallation du service MySQL via le même menu de l'utilitaire winmysqladmin.exe


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 30-10-2003 à 19:35:04    

je n'ai pas lu ton tuto Drasche, bonne initiative
 
je fournis un excellent lien en tuto alternatif et/ou complément d'infos :
http://www.apachefrance.com/Articles/4/page1.html


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 30-10-2003 à 19:39:51    

donné dans le premier post ;)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 30-10-2003 à 20:17:59    

Au moins t'as de la suite dans les idées... :jap:

Reply

Marsh Posté le 30-10-2003 à 20:17:59   

Reply

Marsh Posté le 30-10-2003 à 21:52:50    

impec'  :jap:


---------------
yvele n'est plus.
Reply

Marsh Posté le 30-10-2003 à 22:21:53    

lut
 
qq un aurais une idee j'ai suivit ton tuto's et celui du site que tu donne mais rien a faire apache veut pas se lancer g verifier mon chemin du fichier php4apache.dll c po ca j'ai essayez de trouve pdt 1h maintenant je vous pose la question..
 
une idee ??
 
Merci

Reply

Marsh Posté le 30-10-2003 à 22:28:01    

http://forum.hardware.fr/icones/flagn1.gif
 
Perso, en suivant le lien donné en début du premier post, je fais tourner depuis pas mal de temps un Apache 1.3.xx, un PHP 4.3.x et un MySQL 3.23.xx sans le moindre problème.
 
Je précise aussi qu'il est nettement préférable de rester pour MySQL à une version 3.23.xx sous Windows car les versions suivantes ne sont pas des masses supportées (j'ai eu le souci sur une install). Et le fait de faire tourner PHP en loadmodule le rend bien plus rapide aussi.


---------------
Tant que la couleur de la peau sera plus importante que celle des yeux, nous ne connaitrons pas la paix. ● L'écriture, c'est la mémoire du futur. ● Mods FO4
Reply

Marsh Posté le 30-10-2003 à 22:28:35    

Pour ceux qui veulent installer tout ça sous Linux :
http://www.apachefrance.com/Articles/1/
 
(avec des screenshots faits sous IE :heink:)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 30-10-2003 à 22:29:35    

premier truc à faire pour tenter d'isoler le problème: tu édites httpd.conf et tu vires les déclarations pour utiliser le module PHP. Si ça démarre, le problème est dans php.ini
 
Faut voir aussi ce qu'il te donne comme message d'erreur, il n'arrive peut-être pas à charger une dll supplémentaire, ou bien s'agit-il du fichier php4ts.dll qui ne se trouve pas dans le même répertoire que php4apache.dll (plus probable sur une install standard).


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 30-10-2003 à 22:30:47    

Harkonnen a écrit :

Pour ceux qui veulent installer tout ça sous Linux :
http://www.apachefrance.com/Articles/1/
 
(avec des screenshots faits sous IE :heink:)


ben sur un poste client :o
c'est bien connu que Linux ne s'utilise que sur des serveurs (non il n'est pas encore minuit et je trolle si je veux :o)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 30-10-2003 à 22:46:21    

nunux2002 a écrit :

lut
 
qq un aurais une idee j'ai suivit ton tuto's et celui du site que tu donne mais rien a faire apache veut pas se lancer g verifier mon chemin du fichier php4apache.dll c po ca j'ai essayez de trouve pdt 1h maintenant je vous pose la question..
 
une idee ??
 
Merci


tu as été voir dans les logs, si tu avais des messages d'erreur? parce que ça va pas être facile de deviner :o
 
edit: bonne idée drasche


Message édité par dropsy le 30-10-2003 à 22:47:47
Reply

Marsh Posté le 31-10-2003 à 10:29:22    

si je supprime le loadmodule et les ligne rajoutee ca tourne ce serait dans la php.ini ??

Reply

Marsh Posté le 31-10-2003 à 10:34:13    

Aucun doute, mais je penche d'abord pour un mauvais placement de php4ts.dll.  Regarde s'il est dans le même répertoire que php4apache.dll (celui référencé dans le httpd.conf d'Apache).
 
Edit: en fait le tuto formule mal le problème: le problème est dans PHP mais pas forcément dans php.ini


Message édité par drasche le 31-10-2003 à 10:35:10

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 31-10-2003 à 10:58:39    

Pour continuer dans l'alternative à EasyPHP, BigApache :
http://www.bigapache.org/
 
extrait de phpindex.com :
( source : http://www.phpindex.com/news/news_ [...] ement=1839 )

Citation :

Méconnu par rapport à l?incontournable EasyPhp, le package BigApache nous offre divers dispositifs avantageux. Ce package permet de déployer un serveur HTTP complet rapidement. Il contient les composants : PHP, MySQL, Perl, Python,ASP::Apache, JBoss et Tomcat.
 
Ce freeware fonctionne à la fois sous Unix et Windows, avantage que n?offre pas easyPhp. L?utilisation de BigApache peut être d?ordre commercial ou non. On n?oublie pas la possibilité d?envoyer des mails grâce à l?implantation d?un serveur MAIL Mercury associé aux protocoles POP, SMTP, IMAP, SSL et d?un antispam.
 
Comme Easyphp, le package est associé à un installeur qui facilite l'opération.
 
La dernière version (v1.05) date du 3 juin 2003.


 


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 31-10-2003 à 11:01:05    

[:drapo]
Va bien falloir que je finisse par m'y mettre un jour...


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 31-10-2003 à 11:02:42    

simogeo a écrit :

Pour continuer dans l'alternative à EasyPHP, BigApache :
http://www.bigapache.org/
 
extrait de phpindex.com :
( source : http://www.phpindex.com/news/news_ [...] ement=1839 )


j'espère qu'il ne présente pas les mêmes problèmes qu'EasyPHP ;)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 31-10-2003 à 11:17:44    

simogeo a écrit :

Pour continuer dans l'alternative à EasyPHP, BigApache :
http://www.bigapache.org/


 
sur le site, il ne parle que de Windows  :??:


---------------
IVG en france
Reply

Marsh Posté le 31-10-2003 à 12:11:09    

je plante un drapeau sans lire, je verrai si je peux complèter le tuto ce soir (ou demain, ou après demain, ou...)

Reply

Marsh Posté le 31-10-2003 à 12:39:22    

Tres bonne initiative ce topic.

Reply

Marsh Posté le 31-10-2003 à 15:16:28    

topic d'utilité publique :jap:
 
un ajout bienvenu : le monde merveilleux du .htaccess

Reply

Marsh Posté le 31-10-2003 à 16:11:25    

Bravo !

Reply

Marsh Posté le 01-11-2003 à 10:36:29    

Schimz a écrit :


un ajout bienvenu : le monde merveilleux du .htaccess


 
+1 ca serait un autre très bon topic ca :)

Reply

Marsh Posté le 01-11-2003 à 10:42:54    

Xam_Orpheus a écrit :

+1 ca serait un autre très bon topic ca :)


je laisse le soin à quelqu'un d'autre de s'en occuper parce que je maîtrise pour ainsi dire pas du tout les .htaccess :D


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 01-11-2003 à 12:35:57    

Pareil :/.


---------------
Tant que la couleur de la peau sera plus importante que celle des yeux, nous ne connaitrons pas la paix. ● L'écriture, c'est la mémoire du futur. ● Mods FO4
Reply

Marsh Posté le 01-11-2003 à 12:37:21    

Vaudrait mieux faire un tuto sur google [:totozzz]

Reply

Marsh Posté le 01-11-2003 à 14:21:58    

On aurait pu dire la même chose pour apache / mysql / php...
 
C'est justement le but d'un tuto...

Reply

Marsh Posté le 03-11-2003 à 23:06:47    

pour le .htaccess ya un tuto sur phpfrance qui est pas trop mal fait. c est que les bases je crois mais c est deja ca.

Reply

Marsh Posté le 03-11-2003 à 23:54:26    

Trouvé : http://www.phpfrance.com/tutorials/index.php?id=50


---------------
Tant que la couleur de la peau sera plus importante que celle des yeux, nous ne connaitrons pas la paix. ● L'écriture, c'est la mémoire du futur. ● Mods FO4
Reply

Marsh Posté le 04-11-2003 à 00:03:45    

drasche a écrit :

Aucun doute, mais je penche d'abord pour un mauvais placement de php4ts.dll.  Regarde s'il est dans le même répertoire que php4apache.dll (celui référencé dans le httpd.conf d'Apache).
 
Edit: en fait le tuto formule mal le problème: le problème est dans PHP mais pas forcément dans php.ini


 
tit pb aussi
apache demarre pas (du moins le service reste pas actvié)
 
qd je retire les declarations :  

Code :
  1. LoadModule php4_module c:/program files/php/sapi/php4apache.dll


et

Code :
  1. AddModule mod_php4.c


 
il se lance et ca tiens.
 
j ai verifié le php.ini et l enplacement de tout les fichier cité dans le tuto : tout est correcte.
 
 
une idée ?
ya un fichier log pour savoir sur quoi il butte exactement ?


Message édité par metos le 04-11-2003 à 00:05:21
Reply

Marsh Posté le 04-11-2003 à 01:52:50    

drapeau
 
merveilleux topic que jattendais depuis longtemps :D


---------------
http://www.boincstats.com/signature/user_664861.gif
Reply

Marsh Posté le 04-11-2003 à 07:01:18    

gizmo a écrit :

je plante un drapeau sans lire, je verrai si je peux complèter le tuto ce soir (ou demain, ou après demain, ou...)
 


+1 :jap:


---------------
Le site de ma maman
Reply

Marsh Posté le 05-11-2003 à 11:56:13    

Juste une petite note,
 
   Pour ceux qui débutent, je cite le tutoriel:


La dernière chose à vous occuper concernant Apache est le DocumentRoot, c'est à dire l'endroit où sont stockées les pages webs servies par Apache. Faites une recherche sur DocumentRoot et modifiez la déclaration de façon à pointer vers le répertoire de votre choix.


 
   Il est important de signifier la racine de votre repertoire partagé à 2 endroits. Les voici:
 

#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
[g]DocumentRoot "C:/www"[/g]


 

#
# This should be changed to whatever you set DocumentRoot to.
#
[g]<Directory "C:/www">[/g]


 
   Le second ajout vous permettra de gérer les droits d'acces sur le repertoire racine, et ses sous repertoires. Je le savais, mais lors de la réinstallation de mon serveur, j'ai moi même oublié la modification :) Par conséquent, les droits étant par défaut sur le répertoire de la documentation Apache (qui ne correspond pas nécessairement à votre répertoire Web), le repertoire n'est pas listé s'il n'y a pas de fichier index.html (ou quelque soit le fichier configuré dans DirectoryIndex chez vous). Voilà, j'espère que j'ai donné une explication claire ;)
 
Stolenkiss


Message édité par stolenkiss le 05-11-2003 à 11:57:01
Reply

Marsh Posté le 13-11-2003 à 14:28:01    

Juste une question : j'ai pas l'extension php_zlib.dll dans le sous-rep extensions de PHP (version 4.3.2) ; c'est normal ?


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 13-11-2003 à 14:40:04    

Taiche a écrit :

Juste une question : j'ai pas l'extension php_zlib.dll dans le sous-rep extensions de PHP (version 4.3.2) ; c'est normal ?


 
Fucking Manuel inside :p  
 
"La version Windows de PHP dispose du support automatique de cette extension. Vous n'avez pas à ajouter de librairie supplémentaire pour disposer de ces fonctions."
 

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed