使用mod_rewrite重写子目录中的URL

时间:2015-08-15 09:38:36

标签: apache .htaccess mod-rewrite url-rewriting

我已经使用mod_rewrite为位于我的文档根目录中的站点创建更干净的URL。在将站点移动到子目录时,URL不再起作用。如何更改模块在子目录的.htaccess中查看文档根目录的位置。

如果可能的话,我宁愿不在文档根目录中创建另一个.htaccess,也不要在每次重写时添加/子目录。我试过RewriteBase /sub,但这似乎没有任何结果。有什么想法吗?

的.htaccess

RewriteEngine On
RewriteRule ^contact$ /contact.html [L]
RewriteRule ^about$ /about.html [L]
RewriteRule ^britishprojects$ /british.html [L]
RewriteRule ^otherprojects$ /european.html [L]
RewriteRule ^video$ /media.html [L]

结构

- /
  - /sub
    - .htaccess
    - index.html etc.

1 个答案:

答案 0 :(得分:1)

仅当替换参数是相对参数时,Rewritebase才有效。在RewriteRule的第二个arg上删除前导斜杠。