【发布时间】:2011-04-24 06:24:47
【问题描述】:
我正在尝试进行一些 URL 重写 - 但由于某种原因,它没有按我预期的那样工作(我可能错过了一些非常简单的事情!)。
我有两个站点 - www.domain.local 和 admin.domain.local。使用下面的 .htaccess 文件,公共站点重写很好,但管理站点没有按预期工作,因为它被第一个条件拾取(即使回显 HTTP_HOST 显示我正在查看管理员网站域)。
Options -MultiViews
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
## Force www
RewriteCond %{HTTP_HOST} ^domain\.local$ [NC]
RewriteRule ^(.*)$ http://www.domain.local/$1 [R=301,L]
## Public site rewrites
RewriteCond %{HTTP_HOST} ^www\.domain\.local$ [NC]
RewriteRule ^(home)(/)?$ /index.php [NC]
RewriteRule ^([a-z0-9+-]+)(/)?$ /$1.php [NC,L]
## Admin site
RewriteCond %{HTTP_HOST} ^admin\.domain\.local$ [NC]
RewriteRule ^([a-z0-9+-]+)(/)?$ /manage/$1.php [QSA,L]
我做错了什么?
非常感谢, 凯夫
【问题讨论】:
标签: .htaccess mod-rewrite http-host