欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

apache(rewrite 对 模块url进行重写),出错:The requested URL *** was not found on this serve

程序员文章站 2022-04-28 10:00:22
1、在apache中,当我们利用Apache的rewrite模块对URL进行重写时,rewrite规则会写在 .htaccess 文件里。 要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。 但由于安全性考虑,根目录的AllowOverr ......

1、在apache中,当我们利用Apache的rewrite模块对URL进行重写时,rewrite规则会写在 .htaccess 文件里。

要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。

但由于安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override,如

<Directory />  
    Options FollowSymLinks  
    AllowOverride None
    Order allow,deny  
    Allow from All  
</Directory> 

【注】AllowOverride从字面上解释是允许覆盖的意思,即Apache允许另一配置文件覆盖现有配置文件。

 

2、对于 URL rewrite 来说,至少需要把目录设置为 

AllowOverride FileInfo

 

另附:AllowOverride参数:

AuthConfig

允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。

FileInfo

允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。

Indexes

允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。

Limit

允许使用控制主机访问的指令(Allow, Deny, Order)。

Options[=Option,...]

允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表,用来控制允许Options指令使用哪些选项。