it-swarm.com.de

Apache lädt das Modul nicht von PHP

Ich folge diesem portugiesischen Artikel, um Apache und PHP zu konfigurieren:

Wie installiert und konfiguriert man die Entwicklungsumgebung in PHP - Part 2 .

Ich habe bereits die Dateien php.ini und httpd.conf eingerichtet. Neben php5Apache2_4.dll befindet sich im rechten Verzeichnis, aber wenn ich den Server neu starte, wird mir folgender Fehler angezeigt:

httpd.exe: Syntaxfehler in Zeile 531 von D: /Apache24/conf/httpd.conf: Ungültiger LoadModule-Pfad\xe2\x80\xaa "D: /php-5.6.13/php5Apache2_4.dll"

Httpd.conf:

LoadModule php5_module ‪"D:/php-5.6.13/php5Apache2_4.dll"
AddType application/x-httpd-php .php 
PHPIniDir "D:/php-5.6.13/"

EDIT

Ich habe die Datei Httpd.conf geändert.

LoadModule php5_module ‪"../php-5.6.13/php5Apache2_4.dll"
AddType application/x-httpd-php .php 
PHPIniDir "../php-5.6.13/"

Und jetzt kehrt mir ein neuer Fehler zurück:

httpd.exe: Syntaxfehler in Zeile 531 von D: /Apache24/conf/httpd.conf: Kann ../php-5.6.13/php5Apache2_4.dll nicht in Server laden:% 1 n\xe3o \xe9 um Win32 v\xe1lido.

In englischer Sprache: Keine gültige Win32-Anwendung.

In der Konsole: 

php -version
PHP 5.6.13 (cli) (built: Sep  3 2015 15:14:40)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies

httpd -version
Server version: Apache/2.4.16 (Win64)
Apache Lounge VC14 Server built:   Jul 22 2015 13:24:19

Ich hatte gerade das gleiche Problem beim Versuch, php7 zu konfigurieren, also für alle anderen, die Probleme haben:

Möglicherweise gibt es einige Probleme. Vergewissern Sie sich, dass Ihre Versionen von PHP und Apache bitkompatibel sind (sowohl 64-Bit x64 als auch beide 32-Bit x86; beachten Sie beim Herunterladen von 64-Bit PHP aus windows.php.net/download/ , die Zip-Datei wird php...Win32...x64) genannt. 

Stellen Sie außerdem sicher, dass beide mit derselben Version von Visual Studio (z. B. VC14) kompiliert sind. Dies war das Problem hier: www.apachelounge.com/viewtopic.php?t=6596

In meinem Fall hatte ich das Problem paulsm4 über Zitate bezogen. Ich habe den Code von einer Website kopiert und eingefügt und habe festgestellt, dass beim Ausführen von httpd -k start mein Fehler httpd: Syntax error on line 62 of C:/Apache24/conf/httpd.conf: Invalid LoadModule path \x93c:/php7/php7Apache2_4.dll\x94 war. Der \x93 und der \x94 sind die CP1252-Kodierungen für ausgefallene offene und ende Anführungszeichen. Wenn Sie diese eliminieren oder durch reguläre Anführungszeichen ersetzen, wurde das Problem behoben, und Apache lief problemlos mit PHP. 

Ein anderes Problem, dem ein anderer Benutzer begegnete, war der Versuch, Apache mit NTS (nicht-threadsicherem) PHP zu konfigurieren. 

php.net/manual/de/install.windows.Apache2.php Die PHP Download-Website macht dies auch deutlich. 

4
Benitok

Das Entfernen der Anführungszeichen aus der httpd_uwamp.conf-Datei funktionierte für mich sowohl bei UnWamp als auch bei PHP-Distributionen. (In keinem meiner Pfadnamen sind Leerzeichen enthalten.)

Zum Beispiel ändern 

LoadModule "{PHPMODULENAME} {PHPPATH}/{PHPAPACHE2FILE}" bis LoadModule {PHPMODULENAME} {PHPPATH}/{PHPAPACHE2FILE}

Danke an Giancarlo Abel Giulian für seinen Beitrag ;-)

3
Michael

Ich hatte das gleiche Problem:

Ungültiger Pfad für LoadModule\xe2\x80\x9cC: /WAMP/php/php5Apache2_4.dll\xe2\x80\x9d.

Basierend auf dem obigen Vorschlag von paulsm4 habe ich die Anführungszeichen in der Direktive LoadModule php5_module gelöscht und durch einfache Anführungszeichen ersetzt:

LoadModule php5_module "C:/WAMP/php/php5Apache2_4.dll"

Das hat es für mich gelöst.

1
rwilson

Ich hatte eine harte Zeit, um diesen Fehler zu beseitigen, der schließlich behoben wurde, nachdem beide (Apache und PHP) x86-Version (nicht 64) installiert hatten. 

Vermeiden Sie auch den einfachen Ordnernamen, d. H. Apache2.4 oder PHP, und verwenden Sie stattdessen den detaillierten Namen wie php_7.1.21_vc14_x86_ts und Apache_2.4.34_vc14_x86, um einen Konflikt zu finden, indem Sie den Ordnernamen selbst betrachten, anstatt einen seltsamen Fehler zu erhalten. 

0
user7154703

Veränderung

LoadModule php7_module "c:/php/php7Apache2_4.dll"

zu

LoadModule php7_module /php/php7Apache2_4.dll

und

PHPIniDir "c:/php"

zu

PHPIniDir /php

Gut gemacht.

0
Odkhuu Ts

Ich hatte einen ähnlichen Fehler bei einem einfachen Fehler beim Ausschneiden und Einfügen aus einer älteren httpd.conf-Datei, in der ich hatte

LoadModule php5_module ...

anstatt 

LoadModule php7_module ...

Hoffen Sie, dass dies jemandem helfen kann, diese Fehlermeldung zu googeln.

0
cquezel

Sie müssen sicherstellen, dass Sie die kompatible Version PHP mit Apache verwenden. Wenn Sie Apache 32-Bit ausführen, stellen Sie sicher, dass Sie PHP 32-Bit verwenden Gleiches gilt für 64 BIT. Für die vorläufige Analyse gehen Sie wie folgt vor.

  1. Öffnen Sie die Eingabeaufforderung und navigieren Sie zu Ihrem Apache-Installationsordner, z. B. "C:/Apache24/bin".

  2. Führen Sie dann den folgenden Befehl aus, um festzustellen, ob die Syntax in Ordnung ist: httpd.ex -t

In der Antwort erfahren Sie, ob die erwähnte DLL php5Apache2_4.dll an Ihrem PHP= Speicherort fehlt. Ist dies der Fall, müssen Sie die spezifische kompatible PHP) herunterladen = Version mit Apache, andernfalls wird Ihnen mitgeteilt, dass die Syntax in Ordnung ist.

für weitere Informationen besuchen Sie bitte diesen Link

https://danielarancibia.wordpress.com/2015/09/27/installing-Apache-2-4-and-php-7-for-development-on-windows/

0
Solkom

Ich kann verstehen, wie es sich anfühlt, diesen Fehler zu bekommen. Nach stundenlanger Recherche habe ich nur die doppelten Anführungszeichen entfernt und Sie können loslegen. Doppelte Anführungszeichen müssen nicht aus allen drei Zeilen entfernt werden. Entfernen Sie sie aus der fehlerhaften Zeile.

Vorher

PHPIniDir “C:/PHP”
AddHandler application/x-httpd-php .php
LoadModule php7_module "C:/PHP/php7Apache2_4.dll"

Nachher

PHPIniDir “C:/PHP”
AddHandler application/x-httpd-php .php
LoadModule php7_module C:/PHP/php7Apache2_4.dll

Es hat bei mir funktioniert. Ich denke nicht, dass die oberen zwei Zeilen Ihnen Fehler geben werden, bis Sie PHP auf wahnsinnig falsche Weise installiert haben.

um es zu testen (wenn du es nicht weißt)

  1. open cmd (Sie müssen sich nicht als Administrator öffnen, aber Sie können)

  2. navigieren Sie zum Ordner bin in c:/Apache/bin (oder was auch immer Ihr Ordner ist)

  3. geben Sie httpd -t ein und es sollte die Syntax OK anzeigen, wenn dies nicht der Fall ist. Sie müssen an der Zeile arbeiten, in der ein Fehler aufgetreten ist. Alles, was er am besten kann.

Ziemlich schlechte Antwort? Ich weiß, es ist meine erste Antwort auf jeden Zweifel.

0
DeepakPixel

Modules/php7Apache2_4.dll kann nicht in Server geladen werden: Das angegebene Modul wurde nicht gefunden. Dies ist ein häufiges Problem beim Einrichten der Apache- und PHP-Umgebung auf einem lokalen Computer

Ich hatte auch das gleiche Problem: Die beste Möglichkeit, das Problem anzugehen, bestünde darin, für den Apache-Server und den PHP-Server die gleiche Stufe VC zu installieren und sicherzustellen, dass derselbe VC++ auch auf dem Computer installiert ist. 

Für mich habe ich mit VC14 für Apache24 und PHP versucht und auch die VC++ 2015 Edition installiert, die zufällig VC14 ist

0
Abhi

In meinem Fall wurde es aufgrund des PHP7-Typs heruntergeladen:Non Thread Safe Laden Sie einfach dieThread Safe-Version herunter und extrahieren Sie sie nachC:\php7 (Default directory). Versuchen Sie dann, den Apache-Dienst erneut zu starten.

Ich hoffe das hilft!!!

0
Mike kenneth