2012-07-24 87 views
0

我想重定向使用htaccess,但我不太了解htaccess和重定向。我想要做的是:如何使用htaccess重定向所有子页面并排除特定的URL?

重定向访问所有子页面和目录例如

http://mydomain.com/index.php 
http://mydomain.com/directory/ 
http://mydomain.com/new/directory/ 

在我的域特定的URL说:

http://mydomain.com/one 

我尝试用

redirect /index.php http://mydomain.com/demo/ 

做,但我的问题是如何从这种重定向排除特定的网址和目录?我如何制定规则来排除特定网页被重定向?

任何帮助表示赞赏。

回答

0

你的“选择工具”应该是的RewriteCond

RewriteCond指令可以被用来过滤不仅仅是一个网址多了,每个条件仅适用于未来RewriteRule指令 - 你可以“堆叠” RewriteCond指令,但是。

实施例:

RewriteCond %{REQUEST_URI} !^/path/to/non/redirect/url.php$ 
RewriteCond %{REQUEST_URI} !^/path/to/another/non/redirect/url.php$ 
RewriteRule ^$ http://mydomain.com/one 

然而,这可以简化豆蔻:

RewriteCond %{REQUEST_URI} !^(/path/to/non/redirect/url.php|/path/to/another/non/redirect/url.php)$ 
RewriteRule /index.php http://mydomain.com/one 

Apache Mod_Rewrite Documentation

相关问题