![](/img/trans.png)
[英]Error installing composer in windows PHP Startup: Unable to load dynamic library 'ext\json.so'
[英]PHP intermittently unable to load json.so (PHP 5.4.19 on Ubuntu 12.04 LTS)
我使用的是Ubuntu 12.04 LTS,並且需要PHP 5.4,所以我使用的是OndřejSurý (php5-oldstable)軟件包。
phpinfo和CLI均顯示已啟用JSON:
#php -i | grep -i json
json
json support => enabled
json version => 1.2.1
我的應用程序大部分都能正常工作。 但是定期(大約十個頁面刷新一次)中有一個PHP錯誤。 這只是間歇性發生。
PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525+lfs/json.so'
- /usr/lib/php5/20100525+lfs/json.so: cannot open shared object file:
No such file or directory "json.so"
我該如何解決?
我認為可能的罪魁禍首(正如我在電子郵件中回答的那樣)是您正在從配置文件中的某處加載json擴展名。
JSON擴展是在PHP 5.4的核心中編譯的,因此您不應該手工加載它。
請檢查您是否沒有:
先前PHP 5.5安裝遺留下來的/etc/php5/{mods-available}
中的json.ini
您沒有從提到的腳本中加載JSON擴展名,例如no dl( json.so
)。
更改主要版本時,請確保已停止並啟動Apache2(對php5-fpm
同樣適用)。 這些症狀可能表明從程序包中加載了以前的PHP導致卡住了Apache2線程(在本例中為帶有基於json-c
的JSON擴展的PHP 5.5)。
由於您是說json擴展名已加載到phpinfo()
的輸出中,因此您可能正在處理一個錯誤。 您是否檢查過文件系統中是否確實存在模塊文件?
您有以下選擇:
有關更多信息,請訪問debphp網站 。
提交錯誤是必須的 ,因為如果它是真實的錯誤 ,則必須為所有用戶修復。 如果不與向后兼容性,不推薦使用的功能等遷移准則沖突,則可以首先使用選項2。 所以檢查並決定。
它也根據您所使用的機器而有很大差異。 如果它是關鍵的生產服務器,則可能不希望在其上編譯更改版本。 提交錯誤,看看軟件包維護者對此有何評論。
解決問題后,也請在這里寫回覆。 我對它是什么也很好奇,希望是。 :D
有一點無法診斷或解決問題(似乎是指PHP 5.5),但可能有助於找出其根本原因:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.