2015-09-24 3 views
4

Я после этого португальской статьи настроить Apache и PHP:Apache не загружает модуль из PHP

How Install And Configure The Development Environment in PHP - Part 2.

Я уже создал php.ini и httpd.conf файлов. Кроме того, к php5apache2_4.dll находится в правильном каталоге, но когда я перезагрузить сервер показать мне следующую ошибку:

httpd.exe: Syntax error on line 531 of D:/Apache24/conf/httpd.conf: Invalid LoadModule path \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

Я изменил файл Httpd.conf.

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

А теперь возвращает мне новую ошибку:

httpd.exe: Syntax error on line 531 of D:/Apache24/conf/httpd.conf: Cannot load ../php-5.6.13/php5apache2_4.dll into server: %1 n\xe3o \xe9 um aplicativo Win32 v\xe1lido.

На английском языке: Не является приложением Win32.

В консоли:

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 
+3

Ваш синтаксис * выглядит * правильным ... но внешность может быть обманчивой. Убедитесь, что вы используете «простые двойные кавычки» («== ascii 34») для * all * ваших записей в модуле в httpd.conf и php.ini. Подробнее здесь: https://www.webmasterworld.com/forum92/ 3140.htm. АЛЬТЕРНАТИВНОЕ ПРЕДЛОЖЕНИЕ: поскольку у вас нет пробелов на любом из ваших путей - просто полностью выньте двойные кавычки. – paulsm4

+3

Я решил, спасибо (; я изменил архитектуру Apache, я установил Apache Win32 для последнего. –

ответ

2

Я просто была такая же проблема, пытаясь настроить php7, поэтому для кого возникли проблемы:

Там может быть несколько вопросов. Убедитесь, что ваши версии php и Apache совместимы с битами (как 64-разрядные x64, так и 32-разрядные x86; обратите внимание, что при загрузке 64-битного PHP с windows.php.net/download/ zip-файл будет называться php...Win32...x64).

Также проверьте, что они оба скомпилированы с той же версией Visual Studio (например, VC14). Здесь возникла проблема: www.apachelounge.com/viewtopic.php?t=6596

В моем случае у меня была проблема paulsm4, о которой идет речь о цитатах. Я скопировал и вставил код с веб-сайта и заметил, что когда я запустил httpd -k start, моя ошибка была httpd: Syntax error on line 62 of C:/Apache24/conf/httpd.conf: Invalid LoadModule path \x93c:/php7/php7apache2_4.dll\x94. \x93 и \x94 - это CP1252 encodings для причудливых открытых и конечных кавычек. Устраняя эти или заменяя их регулярными кавычками, исправлена ​​проблема, и после этого Apache корректно работал с PHP.

Другая проблема, с которой кто-то сталкивался, заключалась в том, чтобы настроить Apache с использованием NTS (не потокового) PHP.

php.net/manual/en/install.windows.apache2.php Сайт загрузки PHP также делает это.

+0

«Также убедитесь, что они оба скомпилированы с той же версией Visual Studio (например, VC14) _« ДА! –

1

Удаление двухкабельной формы httpd_uwamp.conf файл работал на меня как на UnWamp, так и на PHP дистрибутивах.(Не должно быть пробелов в любой из моих имен путей)

Для примера Изменение

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

Благодаря Джанкарло Abel Giulian за его пост ;-)

1

У меня была такая же проблема :

Invalid LoadModule path \xe2\x80\x9cC:/WAMP/php/php5apache2_4.dll\xe2\x80\x9d.

основе paulsm4 предложение выше, я удалил цитаты в директиве LoadModule php5_module и репутации с простыми котировками:

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

Это решило это для меня.

0

Изменить

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

в

LoadModule php7_module /php/php7apache2_4.dll 

и

PHPIniDir "c:/php" 

в

PHPIniDir /php 

Молодцы.

0

Невозможно загрузить модули/php7apache2_4.dll в сервер: указанный модуль не найден. Это обычная проблема при настройке среды apache и php на локальный компьютер.

У меня также возникла одна и та же проблема: лучшим способом подойти к проблеме было бы установить тот же уровень VC для сервера apache и php и также убедитесь, что тот же VC++ также установлен на компьютере.

Для меня я попытался с VC14 для apache24 и PHP, а также установлен VC++ 2015 издание, которое случается VC14

0

В моем случае, это было связано с типом PHP7 загружают: Non Thread Safe Просто скачайте Thread Safe версия и извлечение до C:\php7 (Default directory), а затем попробуйте снова запустить службу Apache.

Надеюсь, что эта помощь !!!

Смежные вопросы