我正在尝试创建一个协作服务器。 为此,应共同指定:使用mod_rewrite模块并允许以下指令编译的Apache Web Server> = 2.0:DirectoryIndex,Deny,Allow,Options,Order,AddHandler,RewriteEngine,RewriteBase,RewriteCond和RewriteRule。
我怎么知道是否允许使用这些指令?我是否需要更改apache配置才能使其正常工作?
谢谢您的帮助
答案 0 :(得分:0)
Apache功能被组织为一系列模块。可以在Apache配置文件中启用(或禁用)每个模块,以允许您限制和/或扩展希望服务器具有的功能。在新的Apache安装中,默认情况下会启用某些模块。
可以使用LoadModule
指令(例如,在httpd.conf中)启用模块。对于mod_rewrite,该模块通过以下方式启用:
LoadModule rewrite_module modules/mod_rewrite.so
当前Apache版本here的所有可用指令的索引。当前版本here中存在所有可用模块的索引。
对于您所询问的特定指令:
RewriteEngine
,RewriteBase
,RewriteCond
和RewriteRule
由mod_rewrite
提供。如果您启用了该模块,那么您将可以使用这些指令。
Deny
,Allow
和Order
是v2.2之后的Apache版本不建议使用的访问控制指令。对于Apache v2.4 +,应改为使用Require
。 here提供了新语法的示例。通常,您需要启用mod_authz_core
和mod_authz_host
才能使常用的Require
选项可用。
AddHandler
由mod_mime
提供。
DirectoryIndex
由mod_dir
提供。
Options
是Apache核心功能的一部分,始终可用。