我正在尝试从 here 安装libinjection
我正在尝试安装PHP模块,但我在make
,make install
,make test
之后收到此错误:
2 / libinjection.so - /usr/lib/php5/20121212/libinjection.so:不能 打开共享对象文件:在线未知中没有此类文件或目录 0 PHP注意:使用未定义的常量LIBINJECTION_VERSION - 假设'LIBINJECTION_VERSION' 第6行/home/mohammed/libinjection/php/example.php
第9行的Using libinjection LIBINJECTION_VERSION PHP Fatal error: Call to undefined function new_libinjection_sqli_state() in
/home/mohammed/libinjection/php/example.php
在php.ini中我添加了
extension=libinjection.so
但我仍然收到错误。
有什么建议吗?
答案 0 :(得分:0)
基于错误消息
/usr/lib/php5/20121212/libinjection.so:无法打开共享对象 file:没有这样的文件或目录
当您运行make install
时,它没有将扩展安装到PHP正在寻找它的路径。
找到安装扩展名的位置,然后将libinjection.so
复制到/usr/lib/php5/20121212
,然后重新启动Web服务器(Apache,nginx等)并再次尝试运行代码。
答案 1 :(得分: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
获取可用选项。