htaccess重定向到文件夹

时间:2010-08-13 16:03:33

标签: regex .htaccess mod-rewrite

我不确定标题应该是什么,但它的概念很简单,但我对.htaccess重写没用。

我目前有:

RewriteRule ^([a-zA-z0-9_-]+)/?$ index.php?page=$1

将愉快地将所有请求发送到我的索引,我可以做我想做的事。

我有:

RewriteRule ^events/([a-zA-Z0-9-./]+)/?$ index.php?page=events/index&id=$1

更多间歇性的东西..

但我想说

如果网址为“/ mycms / ...”发送使用到%{HTTP_HOST} / cms并留在那里......

有人可以帮忙吗?我的'抓住所有'规则一直在哄骗它。


编辑 我的工作很精彩

RewriteRule ^mycms([a-zA-Z0-9-./]+)?$ /cms$1 [L]

RewriteCond %{REQUEST_URI} !^/cms 
RewriteRule ^([a-zA-z0-9_-]+)/?$ index.php?page=$1

现在我写 http://localhost/mycms ,然后前往 http://localhost/cms

我仍想屏蔽'/ cms /'文件夹,但是...... o_O

1 个答案:

答案 0 :(得分:1)

你只需要在catch all之前进行重写,并使用L标志来防止它再次被重写,这样就足够了。

RewriteRule ^events/([a-zA-Z0-9-./]+)/?$ index.php?page=events/index&id=$1 [L]
RewriteRule ^([a-zA-z0-9_-]+)/?$ index.php?page=$1