Fév
17
2011

Installation de IIS 6/PHP et MySQL sous Windows Serveur 2003

Devant installer un serveur web dans un OS imposé (Windows 2k3) qui n’est plus tout à fait à jour mais encore fort utilisé dans le monde de l’entreprise avec une technologie web fermé (IIS 6.0) …

Le tout non en ASP (.net) mais bien en PHP, pour moi c’est exactement contraire à ma religion mon choix mais bon ici je ne gérais pas l’aspect technique et maintenance …

J’ai donc installé IIS 6.0, Fast CGI, PHP5 et MySQL et pour être franc, cela n’a pas été aussi facile que tout le monde le croit. J’ai même eu dur à installer le Web Platform sur le 2003 un vrai crasse !

Après de longues recherches, les fichiers ‘.php’ n’étaient pas interprété par le serveur et celui-ci affichait une erreur 404… (Sur internet j’ai trouvé plein de trucs&astuces mais tous datant de 2005-6 et parlant encore de .dll isapi qui ne sont plus existantes dans les nouvelles versions ou de PATH à modifier puis j’ai éprouvé pas mal de problèmes avec l’extension PHP LDAP …

Voici donc étape par étape les opérations à réaliser pour que votre serveur web soit fonctionnel. (A jour en date du 17 février 2011!)

1. Installer le rôle IIS :

Rendez-vous dans le « Manage You Server »

« Add or Remove a role »

« Next »

Sélectionnez « Application server (IIS,ASP.NET)

A vous de sélectionner si vous voulez le FrontPage et ASP.NET (c’est optionnel au bon fonctionnement mais bon…)

« Next » (On commence à avoir l’habitude!)

Ce pauvre Windows vous demande des sources pour installer le role, il suffit de mettre le CD ou d’avoir copier le dossier « I368 » sur votre HDD!

Et voilà c’est enfin fini … (Reste plus qu’à tester si cela est pleinement fonctionnel) => 9 étapes pour faire un apt get install apache2 ou yum install apache2 …

Start -> All Programs -> Administive Tools -> Internet Information Services IIS Manager

Rendez-vous dans Web Sites -> Default Web Site -> Et activer le (La touche Play) et testez en vous rendant sur http://localhost

Si cela affiche Under Construction c’est que vos IIS fonctionnent bien ! (C’est déjà un bon point!)

Conseil : Pensez toujours à faire les mises à jour Windows …

Jusqu’ici rien de compliqué l’IIS !

2. Installer Fast CGI 1.5 pour IIS6:

J’ai rencontré des problèmes (Erreur404) en installant le PHP sans le Fast CGI,  celui-ci accélérant le display des pages …

Disponible ici : http://www.iis.net/download/fastcgi

On va donc l’installer et je vous conseille fortement de le faire sinon c’est pas certain que ça marchera !

Il vous suffit de lancer l’exécutable suivant et d’appuyer sur « Install »

3. Installer PHP5. pour IIS6:

Dans mon cas je vais utiliser la dernière en date :  la version 5.3.5 , Pour Windows il faut la VC9 et je vous conseille la NTS (Non Thread Safe)

Lancez le php-5.3.5-nts-Win32-VC9-x86.msi que vous trouverez sur windows.php.net

Next

Cochez : « I accept the terms in the Licence Agreement » -> « Next »

Choisissez le chemin d’installation (moi j’ai laissé « C:\Program Files\PHP\ »)

Comme dans ce tuto nous avons installé le IIS FastCGI car sans ça, ça ne fonctionnait pas, donc nous le cochons!

Ici installez TOUTES Les extensions donc vous avez besoin, car si vous ne les cochez pas, les dll ne se copieront pas dans le dossier ext/ et pour installer l’installer il ne vous suffira pas de l’activer par le fichier php.ini (exemple : extension=php_ldap.dll) -> Perso j’ai besoin du LDAP

Start -> All Programs -> Administive Tools -> Internet Information Services IIS Manager-> Web Service Extension -> Add a new Web extension

Entrez dans Extension name : « Fichier PHP » et rajoutez (ADD) l’exécutable php-cgi.exe qui se trouve ici « C:\Program Files\PHP\php-cgi.exe »

Personnellement j’ai essayé avec le php.exe , php-win.exe voir php5isapi.dll, php5nsapi.dll ou encore php5ts.dll SANS SUCCÈS … (Attention ne prenez pas des dll de version EasyPHP,Wamp,Xampp,Mamp,… car les dll sont prévue pour du Apache !)

Clic droit sur « Fichier PHP » -> « Allow »

Rendez vous dans l’onglet « Default Web Site » -> Clic droit -> Properties

Onglet « Home Directory » -> « Configuration »

« Add »

Entre dans le champ Executable : « C:\Program Files\PHP\php-cgi.exe » (Avec les guillemets car nous avons une espace dans « ProgramFiles »)

Et dans l’extension : « .php » (sans les guillemets cette fois)

OK

Start -> Execute -> cmd -> iisreset (pour redémarrer l’IIS)

Et créer dans le « C:/Inetpub/wwwroot/ » un index.php et écrivez dedans

phpinfo()

Et lancez IE et allez sur http://localhost/index.php et ça fonctionne : ça affiche le phpinfo !

4. Installer MySQL :

Nous allons utiliser la technologie mysql pour le stockage de base de donnée (c’est bien souvent un standard)

La version actuelle au moment ou je vous parle est la 5.5.8 pour win32/64 trouvable ici : http://dev.mysql.com/downloads/mysql/

Lancez l’installer « mysql-5.5.8-win32.msi » -> « Next »

Cochez « I accept the terms in the Licence Agreement » (N’oubliez pas de lire les 63 Pages !)

Nous allons l’installer normalement en « Typical » (ne compliquons pas les choses)

« Install »

« Next »

« Next »

Cochez « Lauch the Mysql Instance Configuration Wizard » -> « Finish »

« Next »

« Detailed Configuration » -> « Next »

Pour ma part c’est une machine qui va rentrer en production donc je sélectionne le « Server Machine » -> « Next »

« Multifunctionnal Database » -> « Next »

Si vous avez une partition ou un disque différent pour le stockage de la base de données. -> « Next »

« Decision Support (DSS)/OLAP » -> »Next »

(Pour cette partie je vous conseille de désactiver votre Firewall/Antivirus)

Et rajoutez toujours « Add Firewall exception for this port » le port par défaut est le 3306 -> » Next »

« Standard Character Set » -> Next »

Installez le comme service pour que celui-ci démarre avec Windows (Lauch the MySQL Server automatically)

Inscrivez un mot de passe complexe (Majuscule-Minuscule-Caractère Spéciaux-chiffre!) Et si vous devez attendre la DB en remote sélectionnez le!

Et voila, l’installation va se faire. Des fois l’installation, bloque à l’installation du service , je vous conseille de désinstaller l’instance , puis désinstaller le mysql server , lancer un Ccleaner (fichier/registre) puis relancer l’installation de mysql server from scratch!

5. Installer PHPMyADMIN:

Pour administrer la base de données, je vais utiliser PHPMyadmin qui permet de créer des tables , utilisateurs , dumper des SQL, …

Télécharger le zip sur http://www.phpmyadmin.net/home_page/downloads.php version 3.3.9.2

Copiez et  Décompressez le contenu du zip dans le « C:/Inetpub/wwwroot/ »

et renommez le dossier en phpmyadmin

Rendez-vous sur http://localhost/phpmyadmin et loguer vous en « root »

votre mot de passe a été définis pendant l’installation de MySQL server

Et voila maintenant vous pouvez administrer les Database en en créant de nouvelle

Ajout d’accès (Privilèges), Import Export , …

Cependant des fois si vous importez une SQL un peu trop grande la page charge et s’arrête ou affiche un erreur en cours de route …

Il faut modifier des valeur PHP pour augmenter les valeurs de temps limite d’exécution , maximum de la ram utilisable , l’envoie maximum de fichier , …

Le fichier a modifier est PHP.ini

Les valeurs a augmenter sont :

max_execution_time
max_input_time
memory_limit
upload_max_filesize
post_max_size

Voila maintenant vous savez tout !

14 commentaires + Ajouter un commentaire

  • Merci 🙂
    Clair et simple

    Permet d’aller presque aussi vite que sur Linux :}

    • * J’aime ton « PRESQUE » 😀 *

  • Merci tuto de qualité, ça faisait un moment que je galérais pour faire fonctionner php sur IIS 6.

  • Bonsoir !

    Un grand merci pour ce tuto

    Bonne continuation

  • Enfin un tuto complet et très simple d’utilisation, un grand GRAND MERCI
    Deux semaines de recherche et de galère et là j’ai tout fait en 2 heures sans aucun souci

  • Bonjour, j’ai suivi le tutoriel mais ça marche pas pour moi.

    • As-tu bien installé le Fast CGI ?

  • Bonjour a tous…
    nous sommes 2 étudiants finissants, nous somme en stage pratique dans une entreprise qui nous demande d’installer un serveur web sous win 2003 serveur.
    nous demandons de l’aide, nous voulons installer un serveur web sur win 2003 serveur… nous avons installé et configuré l’IIS 6, CGI et PHP 5.3.9 et avons suivi les étapes décrites sur le lien ci-dessous :
    http://blog.avis-planethoster.com/trucs-astuces/installation-de-iis-6-php-mysql-sous-windows-serveur-2003-1173
    le problème qui se pose et que: la page test de php ne s’exécute pas… je veux dire que le navigateur ne s’affiche même pas…
    N.B: nous vous remercions a l’avance, c’est très urgent car nous n’avons pas beaucoup de temps pour ce projet.

    • J’ai documenté toutes les étapes ! je n’ai rien fait de + ou de – …

      Suivez bien toutes les étapes et sa doit fonctionner !

  • Salut,
    merci de prendre le temps de nous répondre.
    voila, on a télécharger phpmyadmin et on a copie le contenu dans un répertoire phpmayadmin, le problème qui se pose c est a chaque fois qu on essai d’accédé au http://localhost/phpmyadmin le message d’erreur d’affiche (Access denied). Ma question c’est d’où donné cette autorisation pour que notre page s’affiche.
    un grand merci a l’avance.

  • EH ben moi, c’est phpmyadmin, qui me demande la librairie php mysqli.dll.. qui pourtant est bien activée dasn la conf php64…. y a toujours un beans

  • je suis en lincence2 en informatique de gestion. j’ai besoin des informations sur IIS sous windows server 2003

  • mrc bcp pour ce tuto 😉

  • Bravo pour ce tuto. Un excellent travail qui m’a permis de résoudre un problème sur lequel je planchais depuis une bonne semaine sans succès.
    Merci encore.
    DoM.

Laisser un commentaire

*