簡體   English   中英

如何修復 PHP 警告:PHP 啟動:無法加載動態庫 'ext\\\\php_curl.dll'?

[英]How to fix PHP Warning: PHP Startup: Unable to load dynamic library 'ext\\php_curl.dll'?

我目前在 Windows Server 2008 R2 上安裝了 PHP 5.5.12 和 Apache 2.4。 一切都運行完美,沒有問題/警告。

我所做的是將相同的 Apache 文件/配置復制到另一台服務器。 我復制了C:\\PHP目錄,然后復制了C:\\PHP C:\\Apache24目錄並將它們粘貼到新服務器中。

然后我通過一個更改(即httpd -k install )安裝了 Apache。我將端口號從 80 更改為 8877。Apache 工作沒有問題,它在 8877 端口上運行。 我也可以通過轉到 SERVER_IP_ADDRESS:8877 打開默認頁面並且它可以工作。

但是,PHP 無法正常工作。 在 Apache 服務器的 error.log 文件中,我收到下面列出的警告

PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_curl.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_ldap.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_mysql.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_mysqli.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_openssl.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_pdo_mysql.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_sqlsrv_55_ts.dll' - The specified module could not be found.\r\n in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library 'ext\\php_pdo_sqlsrv_55_ts.dll' - The specified module could not be found.\r\n in Unknown on line 0

我似乎無法弄清楚為什么會出現此錯誤? 警告指出“找不到指定的模塊”的所有 .dll 文件都存在於 C:\\PHP\\ext 目錄中

PHP 擴展位於

C:\php\ext

在文件 php.ini 我有這個變量

extension_dir = "ext"

這是 ext 文件夾的目錄列表

 Volume in drive C is OS
 Volume Serial Number is C63C-1D75

 Directory of C:\php\ext

07/29/2014  06:42 PM    <DIR>          .
07/29/2014  06:42 PM    <DIR>          ..
04/30/2014  02:46 PM            66,560 php_bz2.dll
04/30/2014  02:46 PM            72,704 php_com_dotnet.dll
04/30/2014  02:46 PM           507,392 php_curl.dll
04/30/2014  02:46 PM            18,944 php_enchant.dll
04/30/2014  02:46 PM            43,008 php_exif.dll
04/30/2014  02:46 PM         2,679,808 php_fileinfo.dll
04/30/2014  02:46 PM         1,358,848 php_gd2.dll
04/30/2014  02:46 PM            40,960 php_gettext.dll
04/30/2014  02:46 PM           240,128 php_gmp.dll
04/30/2014  02:46 PM           831,488 php_imap.dll
04/30/2014  02:46 PM            65,024 php_interbase.dll
04/30/2014  02:46 PM           261,632 php_intl.dll
04/30/2014  02:46 PM           179,200 php_ldap.dll
04/30/2014  02:46 PM         1,239,552 php_mbstring.dll
04/30/2014  02:46 PM            36,864 php_mysql.dll
04/30/2014  02:46 PM            88,576 php_mysqli.dll
04/30/2014  02:46 PM           141,824 php_oci8.dll
04/30/2014  02:46 PM           142,336 php_oci8_11g.dll
04/30/2014  02:46 PM           120,320 php_opcache.dll
04/30/2014  02:46 PM            72,704 php_openssl.dll
04/30/2014  02:46 PM            21,504 php_pdo_firebird.dll
04/30/2014  02:46 PM            24,576 php_pdo_mysql.dll
04/30/2014  02:46 PM            23,040 php_pdo_oci.dll
04/30/2014  02:46 PM            20,480 php_pdo_odbc.dll
04/30/2014  02:46 PM            27,648 php_pdo_pgsql.dll
04/30/2014  02:46 PM           465,408 php_pdo_sqlite.dll
08/28/2012  04:15 PM           186,520 php_pdo_sqlsrv_54_ts.dll
06/26/2013  03:22 PM           166,400 php_pdo_sqlsrv_55_ts.dll
04/30/2014  02:46 PM            90,112 php_pgsql.dll
04/30/2014  02:46 PM            12,288 php_shmop.dll
04/30/2014  02:46 PM           385,536 php_snmp.dll
04/30/2014  02:46 PM           236,544 php_soap.dll
04/30/2014  02:46 PM            54,784 php_sockets.dll
04/30/2014  02:46 PM           617,472 php_sqlite3.dll
08/28/2012  04:15 PM           204,952 php_sqlsrv_54_ts.dll
06/26/2013  03:22 PM           183,296 php_sqlsrv_55_ts.dll
04/30/2014  02:46 PM            31,744 php_sybase_ct.dll
04/30/2014  02:46 PM           236,544 php_tidy.dll
04/30/2014  02:46 PM            51,712 php_xmlrpc.dll
04/30/2014  02:46 PM           231,936 php_xsl.dll
              40 File(s)     11,480,368 bytes
               2 Dir(s)  83,103,895,552 bytes free

當我嘗試訪問該網站時出現此錯誤

致命錯誤:未定義的類常量 'MYSQL_ATTR_INIT_COMMAND'

這是因為未加載擴展。

我假設配置是正確的,因為相同的配置在不同的服務器上工作。

如何解決此 PHP 啟動問題?

正如達倫評論的那樣,Apache 不理解 Windows 中的php.ini相對路徑。

要修復它,請將php.ini的相對路徑更改為絕對路徑。

extension_dir="C:\full\path\to\php\ext\dir"

使用絕對路徑:

extension_dir="C:\full\path\here"

如果你使用 laragon 打開 php.ini

在 laragon 界面中菜單-> php-> php.ini

當您打開文件時查找 extension_dir = "./"

創建另一個沒有**; ** 使用您的 php 版本到文件夾 ** ext ** 的路徑,例如

extension_dir = "C: \ laragon \ bin \ php \ php-7.3.11-Win32-VC15-x64 \ ext"

改變它保存它

  1. 檢查是否正確安裝了與您的 PHP 版本兼容的 Mysql。 例如,mysql-installer-community-5.5.40.1.msi 用於 PHP 5.2.10、apache 2.2 和 phpMyAdmin 3.5.2
  2. 在您的php\\php.ini設置您的可加載 php 擴展路徑(例如extension_dir = "C:\\php\\ext" )( https://drive.google.com/open?id=1DDZd06SLHSmoFrdmWkmZuXt4DMOPIi_A
  3. (在您的php\\php.ini )檢查extension=php_mysqli.dll是否未注釋https://drive.google.com/open?id=17DUt1oECwOdol8K5GaW3tdPWlVRSYfQ9
  4. 將您的php 文件夾(例如"C:\\php" )和php\\ext文件夾(例如"C:\\php\\ext" )設置為您的運行時環境變量路徑https://drive.google.com/open? id=1zCRRjh1Jem_LymGsgMmYxFc8Z9dUamKK )
  5. 重啟 apache 服務( https://drive.google.com/open?id=1kJF5kxPSrj3LdKWJcJTos9ecKFx0ORAW

也許對某人有用,我在 windows 8、apache 2.4、php 7+ 上遇到了下一個問題。

php.ini conf>

extension_dir="C:/Server/PHP7/ext"

apache 上的 php 工作正常,但在 libs 加載的 cli 問題上,因此,我改為

extension_dir="C:/server/PHP7/ext"

在提示符下使用:

dir /x

在“Program Files (x86) 行”中查找目錄的簡化名稱

27/08/2018  15:07    <DIR>          PROGRA~2     Program Files (x86)

php.ini 中為選項添加如下配置:

extension_dir="C:\PROGRA~2\path\to\php\ext"

我在 windows10、apache 2.2.25、php 5.2 上也有同樣的問題 我正在嘗試將 GD 添加到正在運行的 PHP 中。

我如何轉身並在正斜杠和反斜杠之間切換,加上尾隨與否,我得到了一些變體;

PHP 警告:PHP 啟動:無法加載動態庫 'C:/php\\php_gd2.dll' - Det g\\xe5r inte att hitta den angivna modulen.\\r\\n in Unknown on line 0

(瑞典語翻譯:'不可能找到模塊')

在這種特殊情況下,php.ini 是: extension_dir = "C:/php"

dll 放在兩個地方 C:\\php 和 C:\\php\\ext

錯誤日志條目中是否可能存在“錯誤”? 即找到了 .dll(作為文件)但格式不正確,或者類似的東西??

暫無
暫無

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

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