Apache commence à échouer après les modifications de configuration apache, affichant une erreur de syntaxe, ne peut pas charger php5apache2_2.dll dans le serveur

Je suis encore coincé avec les mecs de configuration d'apache. Je travaille sur un système 64 bits exécutant un professionnel de Windows 7 avec le service pack 1. J'ai copié le répertoire de travail php5 de ses coéquipiers, j'ai copié les fichiers .dll nécessaires à partir du dossier d'installation php5 (comme ils étaient dans la configuration de travail des coéquipiers) À mon windows/system32/ . Le serveur Apache a démarré avec succès avec le fichier de config d'apache par défaut ( httpd.conf ). J'ai pu accéder à localhost dans le navigateur. Mais le code php n'a pas été analysé. J'ai noté une telle ligne comme la suivante dans le fichier de configuration apache:

 # PHP5 module LoadModule php5_module D:/php5/php5apache2_2.dll 

Si j'ajoute cette ligne, le démarrage du serveur apache échoue. La configuration du test en cours donne l'erreur suivante:

 httpd.exe: Syntax error on line 60 of C:/Program Files (x86)/Apache Software Foundation/Apache2.2/conf/httpd.conf: Cannot load D:/php5/php5apache2_2.dll into server: The specified procedure could not be found. 

Mais le fichier php5apache2_2.dll existe dans l'emplacement spécifié et j'ai donné toutes les autorisations à l'utilisateur système actuel au php5 installation php5 . La même ligne apparaît également dans le journal des erreurs d'apache. Une autre chose ici est que je ne suis pas certain lorsque les journaux exacts sont écrits dans le fichier journal. Je suis confus si les entrées de journal ne sont pas réalisées si j'ai ouvert le fichier journal pour la lecture? Lol … parce que je ne pouvais pas observer un motif lorsque les entrées sont faites. J'ai vu des entrées de journal en cours, d'autres pas. Mais c'est un problème distinct pour l'instant.

J'avais déjà installé apache, php sur le même système, sur un autre disque dur. J'avais suivi les mêmes étapes que je l'ai suivie maintenant et j'ai réussi à fonctionner avec succès, bien qu'après beaucoup de grattage de la tête, comme la confusion dans l'entrée du fichier journal, j'ai écrit ci-dessus. Je ne me souviens pas exactement de la façon dont je l'ai réparé plus tôt. Mais, j'ai essayé avec le même fichier de configuration d'apache (celui qui fonctionnait plus tôt dans la configuration précédente sur l'ancien disque dur – avait pris une sauvegarde), mais cela donne toujours la même erreur.

Mettre à jour
J'ai lu http://us3.php.net/manual/en/install.windows.apache2.php et ajouté AddHandler application/x-httpd-php .php juste après LoadModule php5_module "D:/php5/php5apache2_2.dll" . Encore aucun succès.

J'ai également lu ce blog où certains binaires VC6 et VC9 sont mentionnés. Je ne les connais pas. Dois-je faire quelque chose à ce sujet?

Mise à jour complémentaire
J'ai téléchargé apache à partir de http://httpd.apache.org/download.cgi – l'option "Win32 Binary sans crypto (no mod_ssl) (MSI Installer)".

3 Solutions collect form web for “Apache commence à échouer après les modifications de configuration apache, affichant une erreur de syntaxe, ne peut pas charger php5apache2_2.dll dans le serveur”

Très probablement, vous avez une version incompatible avec Apache . Vous n'avez pas mentionné où avez-vous téléchargé Apache HTTPD à partir de + quelle version PHP avez-vous.

  1. Obtenez la dernière version d' Apache à partir du site Web Apache Lounge – leurs compilations sont compilées avec VC9 alors que les versions d'apache.org sont encore VC6. Vous avez besoin de la version VC9 car cela explique comment les compilations PHP officielles sont compilées maintenant (vous pouvez lire de petites explications sur le site PHP pour Windows – voir le lien # 2).

  2. Obtenez la compilation thread-safe de PHP à partir de PHP pour Windows (en fonction de votre question que vous souhaitez l'exécuter en tant que module Apache). Si vous souhaitez l'exécuter en tant que FastCGI, une construction non sécurisée est requise.

  3. Désactivez toutes les extensions php non par défaut (jusqu'à ce que vous démarrez avec succès PHP Apache avec PHP).

  4. Configurez votre PHP et Apache si nécessaire (ces lignes de configuration Apache que vous avez mentionnées jusqu'à présent sont bien).

PS "a copié les fichiers .dll nécessaires à partir du dossier d'installation php5 (comme ils étaient dans la configuration de travail des coéquipiers) sur mon système Windows / system32 /"

  1. Vous êtes sur la version x64 bits de Windows. C:\windows\system32\ est uniquement pour les processus / fichiers 64 bits. Dans votre cas, Apache et PHP sont x32, donc l'endroit correct serait C:\Windows\SysWOW64 .

  2. Il n'y a pas de raison réelle de copier ces fichiers là-bas – vous pourriez ajouter votre chemin d'installation PHP ( D:\php5\ ) à la variable d'environnement PATH (placez-le en face) et Windows trouvera tous les fichiers automatiquement (un redémarrage peut être nécessaire) – ça marche bien pour moi.

PPS Au lieu de l'installer manuellement, vous pouvez utiliser une des piles déjà préconfigurées: XAMP , WAMP ou similaire.

J'ai réglé le problème. En fait, l'absence de certains fichiers dll nécessaires, pas sûr de quel fichier particulier, était la raison et j'essayais en l'absence de beaucoup de fichiers DLL.

Ce que j'ai fait, j'ai suivi la partie de configuration d'apache de son coéquipier 1, puis copié le répertoire php5 de son coéquipier 2 (qui était sur un système 32 bits avec Windows px). J'ai supposé que le dossier php 5 serait le même et aurait eu tort. Le problème a été corrigé lorsque j'ai pris le dossier php 5 de son coéquipier 1.

J'ai vérifié et j'ai trouvé qu'il y avait beaucoup de différences dans le contenu des deux dossiers php5, principalement des fichiers dll. L'absence de fichiers dll nécessaires doit avoir été le problème car j'ai eu besoin d'un redémarrage du système après avoir pris le bon dossier php5 de son coéquipier 1.

Morale de l'histoire –
Pendant la copie, ne pas appliquer le cerveau et copier à partir du même endroit 🙂

Vous ne devez copier aucun de ces fichiers (comme libeay32.dll , ssleay32.dll ) à n'importe quel endroit, le problème peut être résolu en ajoutant le répertoire d'installation de php à la variable d'environnement du chemin du système.

  • Créer et utiliser un Vista VHD via Windows 7
  • Imprimante sans fil HP ne fonctionne pas
  • L'user distant ne peut pas se connecter à l'ordinateur - Il n'y a actuellement aucun server d'ouverture de session disponible pour répondre à la request d'ouverture de session
  • Windows 7: la key de produit que vous avez saisie ne semble pas être une key de produit Windows 7 valide
  • Activer l'invite du mot de passe pour l'environnement de récupération de Windows
  • Quand utiliser Truecrypt et quand pas?
  • Comment désactiver "supprimer en toute security le matériel"
  • Les raisons légales n'utilisent pas Home Basic / Home Premium dans une entreprise
  • Vous n'avez pas enregistré un ordinateur avec le controller de domaine à l'aide de powershell?
  • Pourquoi est-ce que vanilla 64-bit Ubuntu Server 10.10 mange 446200k de memory?
  • La résolution gagne un problème de jointure de domaine 7
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de réseau.