.htaccess在子目录中

时间:2011-04-27 22:41:01

标签: php apache .htaccess

我整个晚上都在搜索我的.htaccess文件解决问题的方法。

基本上我在www.site.com上有一个带有.htaccess的www目录,内容如下:

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} !^(/admin)
RewriteRule ^[^_+/]. index.php

它工作得很好,允许通过index.php解析www.site.com/en/articles/Interesting_title/3,它会读取哪个控制器,语言和要显示的文章。

但是我希望管理系统以相同的方式工作。 www.site.com/admin应该有一个.htaccess文件,允许我这样写URL。

www.site.com/admin/en/articles/article_title/3应该允许我使用en english UI编辑第3号文章。

在第一种情况下倾倒$ _SERVER ['REQUEST_URI']给出“en / articles / Interesting_title / 3”
在第二种情况下倾倒$ _SERVER ['REQUEST_URI']给出“admin / en / articles / article_title / 3”

如果我稍后选择将管理移至www.site.com/shassooo,我希望避免更改除.htaccess文件之外的任何代码。

干杯

1 个答案:

答案 0 :(得分:1)

将此行添加到您拥有的同一.htaccess文件中,不在管理员子目录下

RewriteCond %{REQUEST_URI} !^/admin/index.php$ [NC]
RewriteRule ^admin/[^_+/]. /admin/index.php [L,NC]