2010-09-17 128 views
0

我有一个站点设置完成了一个索引等。我想只重定向到www.example.com直接到www.example.com/foo.php的流量。但是,如果用户试图直接访问www.example.com/index.php或任何其他现有页面,则该请求应如常返回适当的页面。我似乎无法绕过这些重写规则。我将如何使用.htaccess完成此操作?使用.htaccess将流量重定向到根目录到特定页面

回答

4

你可以很可能逃脱只是改变了DirectoryIndex/foo.php

DirectoryIndex foo.php 

但是,如果你想使用mod_rewrite实际重写URL,有几个不同的方式来做到这一点,但clearist是只检查所请求的资源是一个空字符串(被请求的根,并在.htaccess文件输入到RewriteRule不包含前导斜杠):

RewriteEngine On 

RewriteRule ^$ /foo.php 

任何对/不是/的服务器请求都将被忽略并由Apache正常路由。

+0

完美无瑕的工作和如此快速的回应。关于如何着手学习这些重写规则的建议? – 2010-09-17 01:53:51

+0

@Oren:太棒了。在阅读文档之外,许多“典型”案例已经在这里提出并回答,所以从我想象的答案中可以学到一点点。如果你有一个本地测试服务器,使用带有高RewriteLogLevel的['RewriteLog'](http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritelog)可以帮助你感受内部发生了什么。大多数只是正则表达式,诡计和尝试错误,但是,所以它需要一些习惯。 – 2010-09-17 02:01:49

相关问题