2015-06-10 41 views
0

我試圖從here 我試圖安裝PHP模塊安裝libinjection但make後,我得到這個錯誤,make installmake test動態庫:PHP無法加載

2/libinjection.so - /usr/lib/php5/20121212/libinjection.so:不能 打開共享對象文件:沒有這樣的文件或目錄在未知的行 0 PHP注意:使用未定義的常量LIBINJECTION_VERSION - 假定'LIBINJECTION_VERSION ' /home/mohammed/libin上行線6 jection/PHP /使用example.php

Using libinjection LIBINJECTION_VERSION PHP Fatal error: Call to undefined function new_libinjection_sqli_state() in 

/home/mohammed/libinjection/php/example.php 9

在php.ini我加入 extension=libinjection.so但我仍然得到錯誤。

有什麼建議嗎?

回答

0

基於錯誤信息

/usr/lib/php5/20121212/libinjection.so:無法打開共享對象 文件:沒有這樣的文件或目錄

當您運行make install它沒有將擴展安裝到PHP正在查找的路徑中。

找到它安裝了擴展,並複製到libinjection.so/usr/lib/php5/20121212然後重新啓動Web服務器(Apache時,Nginx的等),並嘗試再次運行代碼。

+0

我認爲他沒有建立該文件,libinjection.so尚不存在。順便說一句,你需要重新加載PHP,而不是網絡服務器。只有在內置PHP或模塊時才需要重新啓動Web服務器。 – DanFromGermany

0

要構建在PHP中, 擴展你首先需要在PHP文件夾中運行scripts/phpize

./configure有前綴找到正確的文件夾。

僅僅使用./configure && make && make install不夠

chmod +x /usr/local/src/php-5.6.9/scripts/phpize 
/usr/local/src/php-5.6.9/scripts/phpize 

./configure --prefix /usr/local/src/php-5.6.9 \ 
--with-libdir=/lib/x86_64-linux-gnu \ 

使用./configure --help獲得可用選項。