Bien que la combinaison LAMP soit très bonne, si vous souhaitez configurer un serveur hôte virtuel Web prenant en charge simultanément PHP, ASP, ASP.NET, JSP et Perl, il est préférable d'utiliser IIS 6 de Windows 2003. Il existe de nombreux articles sur Internet sur la configuration de PHP sur IIS 6, mais ces méthodes ont des performances médiocres ou sont difficiles à mettre à niveau. La méthode suivante vous permet d'effectuer une mise à niveau très facilement après la première configuration.
La mise à niveau mentionnée ici fait référence à la mise à niveau d'une certaine version de php4 vers une autre version de php4, ou d'une certaine version de php5 vers une autre version de php5, et non de php4 vers php5.
Préparation :
1. Un serveur Windows 2003 installé et IIS 6 ont été installés.
2. Téléchargez la version Windows du package compressé binaire PHP
et installez-le :
Décompressez le package compressé binaire PHP dans le répertoire C:php (en supposant ici que le lecteur C: est le disque système, c'est-à-dire que le disque système Windows est installé, si le disque système est le disque D:, décompressez-le dans le répertoire D:php, et ainsi de suite, de même ci-dessous).
Ensuite, ouvrez "Poste de travail" -> "Propriétés" -> "Avancé" -> "Variables d'environnement" -> "Variables système" -> "chemin", modifiez sa valeur et ajoutez l'adresse de chemin suivante devant :
C: php;C:phpdlls;C:phpextensions;C:phpsapi;
Copiez php.ini-dist ou php.ini-recommended dans le répertoire C:Windows et renommez-le en php.ini , généralement, le serveur qui publie officiellement le site Web utilise php.ini-dist, et le serveur utilisé comme serveur de débogage est préférable d'utiliser php.ini-recommended. Bien entendu, dans des circonstances normales, ce php.ini doit encore être modifié en fonction de la situation réelle.
Voici quelques options de modification nécessaires :
extension_dir = "C:phpextensions"
C'est le répertoire dans lequel l'extension PHP est placée. Veuillez vous assurer qu'il est le même que le répertoire que vous avez réellement installé.
extension=php_mbstring.dll
;extension=php_big_int.dll
extension=php_bz2.dll
extension=php_cpdf.dll
extension
= php_crack.dll extension=php_curl.dll
extension=php_db.dll
extension=php_dba.dll
extension=php_dbase.dll
extension=php_dbx. dll
extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_hyperwave.dll
extension=php_iconv.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_java.dll
extension=php_ldap.dll
;extension=php_mcrypt.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension= php_mssql.dll
extension=php_msql.dll
;extension=php_oci8.dll
extension=php_openssl.dll
;extension=php_oracle.dll
extension=php_pdf.dll
extension=php_pgsql.dll
;extension=php_printer.dll
extension=php_shmop.dll
;extension=php_snmp .dll
extension=php_sockets.dll
;extension=php_sybase_ct.dll
extension=php_w32api.dll
extension=php_xmlrpc.dll
extension=php_xslt.dll
extension=php_yaz.dll
extension=php_zip.dll
Ceux sans point-virgule au début sont ouverts. Les extensions, celles avec un point-virgule sont des extensions qui ne sont pas ouvertes. Les paramètres ci-dessus incluent toutes les extensions qui peuvent être activées par défaut sous Windows 2003 (celles répertoriées ici sont pour PHP 4).
session.save_path = c:sessions
Il s'agit du répertoire dans lequel les fichiers de session sont enregistrés par défaut. Ce répertoire doit être un répertoire existant, sinon la fonction de session par défaut ne sera pas valide. Ce que j'ai défini ici est un répertoire sur un disque virtuel. La définition de session.save_path sur le disque virtuel peut accélérer le traitement de la session. Si vous n'avez pas installé le disque virtuel, vous pouvez l'attribuer à n'importe quel répertoire sur d'autres disques, tel que le répertoire C:sessions, le répertoire C:WindowsTemp, etc.
OK, le travail de base est terminé, il est maintenant temps de configurer IIS.
Ouvrez "Gestionnaire des services Internet (IIS)", dans "Extension de service Web", sélectionnez "Ajouter une nouvelle extension de service Web", le nom de l'extension peut être renseigné dans "Extension PHP ISAPI", la sélection de fichier requise : C:php sapiphp4isapi.dll (si PHP5 est installé, il s'agit de C:phpsapiphp5isapi.dll, le même ci-dessous), et définissez le statut de l'extension sur autorisé.
Ouvrez "Site Web" -> "Propriétés" -> "Filtre ISAPI" -> "Ajouter", remplissez "PHP" pour le nom du filtre et sélectionnez toujours C:phpsapiphp4isapi.dll pour le fichier exécutable.
Ouvrez "Site Web" -> "Propriétés" -> "Répertoire personnel" -> "Paramètres de l'application" -> "Configuration" -> "Extensions d'application" -> "Ajouter", ou sélectionnez C:php pour le fichier exécutable sapi. php4isapi.dll. Remplissez l'extension ".php", et l'action se limite à "HEAD, GET, POST".
Ouvrez « Site Web » -> « Propriétés » -> « Document » -> « Activer le document de contenu par défaut » -> « Ajouter » pour ajouter index.php comme document de contenu par défaut.
Sélectionnez ensuite « Nom de la machine du serveur » -> « Toutes les tâches » -> « Redémarrer IIS » pour redémarrer IIS.
Test :
Créez une page de test dans le répertoire de publication par défaut du site Web :
Téléchargement : phptest.php
phpinfo(
?>
Si vous pouvez voir les informations de configuration de l'installation de php lorsque vous ouvrez cette page, l'installation est réussie.
Si vous souhaitez exécuter les programmes PHP de manière plus optimale, vous pouvez installer ZendOptimizer-2.6.0-Windows-i386.exe. Cette installation est très simple et ne sera pas présentée ici.
Mise à niveau
La mise à niveau est désormais très simple. Il vous suffit de télécharger la nouvelle version du package compressé binaire PHP, de supprimer le répertoire C:php d'origine, de décompresser la nouvelle version dans le répertoire C:php, puis de redémarrer IIS. Il n'est pas nécessaire de modifier une configuration ou de copier des fichiers dans le répertoire System32. N'est-ce pas très pratique ?