2012-11-17 16 views
4

J'ai des problèmes avec Apache/PHP sous Windows 8. Je les ai déjà utilisés sur XP (avec MySQL) sans aucun problème. Je n'ai jamais utilisé Windows 7.Apache/PHP sous Windows 8

Apache s'installe sans problème. Tout fonctionne bien, y compris tous mes serveurs virtuels. PHP installe OK, l'installation place les entrées dans httpd.conf sans donner d'erreur. Cependant, lorsque j'essaie de charger Apache après l'installation de PHP, Apache ne se charge pas.

Je suis confus par l'erreur qui retourne Apache lorsque les entrées PHP sont incluses dans httpd.conf:

Syntax error on line 1029 of C:/Program Files/Apache Group/Apache2/conf/httpd.conf: 
Cannot load C:/Program Files/PHP/php5apache2_2.dll into server: The specified module could not be found. 

Les lignes sont les suivantes:

#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL 
PHPIniDir "C:\Program Files\PHP\" 
LoadModule php5_module "C:\Program Files\PHP\php5apache2_2.dll" 
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL 

(ligne 1029 est la ligne LoadModule). Cet emplacement pour la DLL est définitivement correct. La syntaxe de la ligne est comme insérée par PHP. J'ai comparé la syntaxe aux versions précédentes de httpd.conf que j'ai et il semble correct. Je pense que l'erreur de syntaxe est un hareng rouge.

J'ai essayé:

  • de commutation à barres obliques antislashs dans l'emplacement dll.
  • Ajout de PHP au chemin.
  • Installation d'Apache et de PHP dans les deux séquences.
  • Vérification des autorisations du dossier PHP et des fichiers individuels pour vous assurer que le système a été lu/exécuté.

Commentez les lignes PHP et Apache se charge bien. Si je commente la ligne LoadModule et quitte la ligne PHPIniDir, elle échoue toujours. Apache semble se comporter comme s'il ne pouvait pas voir le répertoire PHP, mais je ne sais pas pourquoi.

Il n'y a rien dans le journal des événements Windows. Dernières versions de PHP et Apache. Je suis un peu perdu ce qu'il faut essayer ensuite. Des suggestions s'il vous plaît?

+0

Essayez de réinstaller PHP dans un endroit sans espaces dans le chemin (disons, 'C: \ PHP'). – Ryan

+0

Juste une pensée: dans le cas où votre Windows est 64 bits, il est possible que votre PHP est allé dans le dossier 'C: \ Program Files (x86)' au lieu de 'C: \ Program Files' et donc le chemin ne correspond pas . – Havelock

+1

J'ai essayé l'installation dans C: \ PHP. Même résultat –

Répondre

0

présumant ceci est votre développement, et non pas l'environnement de déploiement, pourquoi ne pas vous venez de télécharger xampp de apache friends? Il devrait être préconfiguré, et vous allez le déployer dans une autre configuration de toute façon.

+0

C'est plus un commentaire, pas vraiment une réponse. – Havelock

+1

Non, c'est une solution pratique. Aucune raison de poursuivre la «pureté» avec Windows. –

+0

Je n'ai jamais utilisé xampp auparavant, mais je vais essayer. Merci. –

11

Télécharger et suivez les instructions de ce lien: http://www.apachelounge.com/download/

Le dernier téléchargement (2.4) fonctionne sur Windows 8 et Server 2012.

J'ai téléchargé et testé avec les éléments suivants sur Windows 8: Chaque zip a un readme.txt ou install.txt avec des instructions.

Mes lignes httpd.conf qui ont été ajoutés/modifiés sont:

LoadModule rewrite_module modules/mod_rewrite.so 
LoadModule php5_module "C:/Apache24/php-5.4.8/php5apache2_4.dll" 
LoadFile "C:/Apache24/php-5.4.8/php5ts.dll" 
PHPIniDir "C:/Apache24/php-5.4.8" 
<IfModule php5_module> 
    <Location /> 
    AddType text/html .php 
    AddHandler application/x-httpd-php .php 
    #AddHandler application/x-httpd-php-source .phps 
    </Location> 
</IfModule> 
+0

Je n'ai aucune idée de ce que le fichier php5ts.dll fait, je suppose que quelque chose avec la menace sécuritaire, mais il a causé mon apache locale à devenir plus rapide en faisant une demande dans IE, et environ 300% plus rapide en FF. Merci d'avoir fourni votre config httpd.conf! – Jeffrey

-1

Je pense que le problème est dans le "Program Files" vide.

1

Son mentionnés dans le fichier Lisezmoi.txt emballé avec les dll à ApacheLounge, mais nulle part ailleurs sur la page de téléchargement ou dans le nom de fichier (comme toutes les autres versions):

« Fonctionne avec PHP 5.4 Thread Safe (TS), et seulement avec Apache 2.4 Win32 VC9 ou VC10 "

Les dll sont uniquement pour la version TS, donc si vous avez téléchargé l'autre, vous êtes fondamentalement vissé. TS binaires php l'a corrigé pour moi.

GL.

0

J'ai rencontré le même problème lors de la réinstallation d'Apache et de PHP sur Win 8 (je suis plus un utilisateur Linux). Et semblable à la publication originale, peu importe ce que j'ai essayé de faire dans httpd.conf et php.ini Apache simplement soit n'a pas commencé ou n'a pas vu le PHP. Après avoir passé un temps déraisonnable, j'ai décidé de télécharger le PHP 5.3 (5.3.27) -VC9 x86 Thread Safe (2013-Jul-10 21:56:58) Installateur [45.86MB] au lieu du coffre-fort non-bande de roulement version que j'ai utilisé avant. Il y a une différence dans les programmes d'installation .msi. Celui de la version thread-safe contient en fait les fichiers requis et si vous suivez les instructions du programme d'installation, il vous demandera si l'installation de php doit être "liée" au serveur Apache. Ensuite, vous fournissez simplement le répertoire hhtpd.conf et tout fonctionne correctement. C'est mon 2c sur ce :)

Questions connexes