命令“订单”无效,可能是拼写错误或由未包含在服务器configuration中的模块定义

当我尝试启动或重新启动我的apache服务器时,我得到了波纹pipe的消息:

Syntax error on line 162 of /etc/apache2/apache2.conf: Invalid command 'Order', perhaps misspelled or defined by a module not included in the server configuration Action 'configtest' failed. The Apache error log may have more information. failed! 

我试着在google上发现这个错误并修复它:

http://linuxindetails.wordpress.com/2009/12/02/invalid-command-order-perhaps-misspelled-or-defined-by-a-module-not-included-in-the-server-configuration-failed/

我得到错误: Module authz_host does not exist!

所以,有些身体帮助我解决它?

谢谢 !

在SUSE 12上,authz_host已经启用了,所以我需要遵循willoller的注释并启用mod_access_compat:

 a2enmod mod_access_compat service apache2 restart 

您需要启用authz_host模块。 这是该模块上的Apache文档。

我不确定你使用的是什么Linux发行版,但是这里有一些例子。

Ubuntu的:

 sudo a2enmod authz_host sudo service apache2 restart 

RHEL:

 vi /etc/httpd/conf/httpd.conf # Make sure this line is not commented: ... Loadmodulee authz_host_module modules/mod_authz_host.so ... 

从openSUSE 13.2升级到openSUSE Leap 42.1时,我遇到了同样的问题。

这个问题不是apache2-configuration中缺少的模块。

问题是从apache 2.2升级到apache 2.4。 “订单”和“允许”必须重写如下(示例):

在2.2中:

 Order allow,deny Allow from all 

在2.4:

 Require all granted 

你可以在这里找到更多的选择一个例子: 升级apache2

使用Apache 2.4,请取消注释/添加以下模块:

 Loadmodulee access_compat_module modules/mod_access_compat.so Loadmodulee authz_host_module modules/mod_authz_host.so