Apache服务器配置错误总结(Apache加载PHP模块错误:LoadModule takes two arguments...)

文件目录的空格问题,坑死人

# php7 support

LoadModule php7_module "D:/portable soft/PHP WEB/PHP/php7apache2_4.dll"

AddType application/x-httpd-php .php .html .htm

# configure the path to php.ini

PHPIniDir "D:/portable soft/PHP WEB/PHP"

这段配置如果LoadModule php7_module后面不加引号,则会报LoadModule takes two arguments, a module name and the name of a shared object file to load it from 原因就是文件目录的空格问题,我的PHP存放目录是在D:/portable soft/PHP WEB下,这里的文件目录有空格,(LoadModule 后面的空白是被拿来当作参数的间隔,如果 PHP 安装路径有空格字符,可能就会造成误判空白后的字符是另一个参数)

如果PHP存放目录没有空格则可以不加引号,网络上的很多配置写法也是不加引号的,但是如果存放目录有空格不加引号就会出问题,经过我的尝试,只要将LoadModule php7_module的路径加上引号就能解决错误

Apache服务器配置错误总结(Apache加载PHP模块错误:LoadModule takes two arguments...)_第1张图片
注意:PHP文件目录有空格,则可以路径加引号解决


Apache服务器配置错误总结(Apache加载PHP模块错误:LoadModule takes two arguments...)_第2张图片
PHP所在文件目录有空格不加引号导致的错误示意图

备注:

原因发现(http://blog.chinaunix.net/uid-49097-id-78175.html)

概括如下:

LoadModule php4_module C:\Program Files\PHP\sapi\php4apache2.dll

虽然 Apache 在 Windows 底下可以装在 Program Files 目录底下,但是因为LoadModule 后面的空白是

被拿来当作参数的间隔,如果 PHP 安装路径有空格字符,可能就会造成误判空白后的字符是另一个参数.


教训:诶,以后命名文件夹还是不加空格感觉比较保险

你可能感兴趣的:(Apache服务器配置错误总结(Apache加载PHP模块错误:LoadModule takes two arguments...))