在WIN XP下手动配置PHP环境,安装Apache2.4+fastcgi后,重启Apache服务,出现如下提示:
AH00526: Syntax error on line 293 of D:/php_web/Apache24/conf/httpd.conf:
Invalid command 'Order', perhaps misspelled or defined by a module not included
in the server configuration
搜索一下,大多是说mod_authz_host.so模块没有加载,但检查后发现httpd.conf中:
该模块并未被注释掉,那原因究竟出在哪里?
说来也巧,既然网上有提到这种错误的出现是因为某模块未被加载,于是笔者索性随手取消掉了第一行的模块注释,通过Apache Service Moniter重启服务……
!!竟然没再报错,那问题就出在这个模块上了:
搜索 mod_access_compat.so这个模块,发现如下文章(原文链接):
原来在Apache2.4版本中,提供了由mod_authz_host支持的新的访问控制配置语法。而2.2版本中的Order、Allow等命令在新版本中也可以得到兼容,实现这个兼容功能的模块就是mod_access_compat。所以Load这个模块后,apache2.4就能识别这些语句了。