簡體   English   中英

Apache 不從 PHP 加載模塊

[英]Apache doesn't load module from PHP

我正在關注這篇葡萄牙語文章來配置 Apache 和 PHP:

如何在 PHP 中安裝和配置開發環境 - 第 2 部分

我已經設置了php.inihttpd.conf文件。 除了php5apache2_4.dll位於正確的目錄之外,但是當我重新啟動服務器時,顯示以下錯誤:

httpd.exe: D:/Apache24/conf/httpd.conf 的第 531 行語法錯誤: 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/"

編輯

我更改了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:D:/Apache24/conf/httpd.conf 第 531 行的語法錯誤:無法將 ../php-5.6.13/php5apache2_4.dll 加載到服務器中:%1 n\xe3o \xe9 um aplicativo Win32 v\賽利多。

英語:不是有效的 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

我在嘗試配置 php7 時遇到了同樣的問題,所以對於其他有問題的人:

可能有幾個問題。 檢查您的 php 和 Apache 版本是否位兼容(64 位x64或 32 位x86 ;請注意,從windows.php.net/download/下載 64 位 PHP 時,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 編碼 消除這些或用常規引號替換它們可以解決問題,之后 Apache 可以使用 PHP 順利運行。

其他人遇到的另一個問題是嘗試使用 NTS(非線程安全)PHP 配置 Apache。

php.net/manual/en/install.windows.apache2.php PHP 下載網站也說明了這一點。

httpd_uwamp.conf文件中刪除雙引號對我來說在UnWampPHP發行版上都有效。 (我的任何路徑名中都沒有空格)

例如更改

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

感謝 Giancarlo Abel Giulian 的帖子 ;-)

您必須確保您使用的是與 apache 兼容的 PHP 版本。 這樣,如果您正在運行 apache 32 位,請確保您使用的是 PHP 32 位,這同樣適用於 64 位。 對於初步分析,請執行以下操作。

  1. 打開命令提示符並導航到您的 apache 安裝 bin 文件夾,例如 cd "C:/Apache24/bin"

  2. 然后運行以下命令查看語法是否正常: httpd.exe -t

響應將告訴您是否在您的 PHP 位置中缺少提到的 dll php5apache2_4.dll。 如果是這種情況,那么您必須使用 apache 下載特定的兼容 PHP 版本。 否則它會告訴你語法沒問題。

欲了解更多信息,請訪問此鏈接

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

我遇到了同樣的問題:

無效的加載模塊路徑 \xe2\x80\x9cC:/WAMP/php/php5apache2_4.dll\xe2\x80\x9d。

根據上面 paulsm4 的建議,我刪除了指令 LoadModule php5_module 中的引號並用簡單的引號替換:

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

這為我解決了。

我有一個類似的錯誤,因為我有一個舊的 httpd.conf 文件中的一個簡單的剪切和粘貼錯誤

LoadModule php5_module ...

代替

LoadModule php7_module ...

希望這可以幫助其他人谷歌搜索此錯誤消息。

改變

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

LoadModule php7_module /php/php7apache2_4.dll

PHPIniDir "c:/php"

PHPIniDir /php

做得好。

無法將模塊/php7apache2_4.dll 加載到服務器中:找不到指定的模塊。 這是在本地計算機中設置 apache 和 php 環境時的常見問題

我也遇到了同樣的問題:解決問題的最佳方法是為 apache 服務器和 php 安裝相同的 VC 級別,並確保計算機中也安裝了相同的 VC++。

對我來說,我嘗試使用 VC14 用於 apache24 和 php,還安裝了 VC++ 2015 版,恰好是 VC14

在我的情況下,這是由於下載的 PHP7 的類型: Non Thread Safe只需下載Thread Safe版本並解壓縮到C:\php7 (Default directory) ,然后嘗試再次啟動 Apache 服務。

希望這有幫助!!!

我很難擺脫這個錯誤,最終在( Apache 和 PHP )安裝 x86 版本(不是 64 )后解決。

還避免了簡單的文件夾名稱,即 Apache2.4 或 php,而是使用詳細名稱(如php_7.1.21_vc14_x86_tsApache_2.4.34_vc14_x86 )通過查看文件夾名稱本身而不是不斷出現奇怪的錯誤來捕獲不匹配。

我能理解得到這個錯誤的感覺。 經過數小時的研究,我發現只需刪除雙引號,你就可以走了。 無需從所有三行中刪除雙引號。 從給您錯誤的行中刪除它們。

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

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

它對我有用。 我不認為上面的兩行會給你錯誤,除非你以非常錯誤的方式安裝了 PHP。

測試它(如果你不知道)

  1. 打開 cmd (無需以管理員身份打開,但可以)

  2. 導航到 bin 文件夾到 c:/apache/bin (或任何你的文件夾)

  3. 輸入 httpd -t 如果不是,它應該顯示語法 OK,所以你需要在它說有錯誤的行上工作。 都是他最好的。

回復很差? 我知道這是我對任何疑問的第一次答復。

我有同樣的錯誤。 我唯一改變的是php_modulephp7_module

PHPIniDir "c:/php"
LoadModule **php_module** "c:/php/php7apache2_4.dll"
AddType application/x-httpd-php .php

PHPIniDir "c:/php"
LoadModule **php7_module** "c:/php/php7apache2_4.dll"
AddType application/x-httpd-php .php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM