重定向文件夹访问文件(但不重定向文件夹中的文件)

时间:2015-08-24 17:31:48

标签: php .htaccess redirect

我目前在abc.com/folder/设置了一个网页,此文件夹中有多个.php文件需要访问。由于平滑滚动脚本与我的共享导航文件之间存在冲突,我正在寻找将abc.com/folder/重定向到abc.com/folder/index.php的.htaccess规则,但不会重定向abc.com/folder/xyz.php。目前我有:

RewriteEngine On
RewriteRule ^/?folder/ ^/folder/index.php [R=301,L]

但是这个将所有文件重定向到index.php,而我只想重定向基目录,但没有任何文件。不会改变任何内容。

编辑:目前我有这个:

RewriteEngine On
RewriteRule ^/?folder/ ^/folder/index.php [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f

它根本没有做任何事情。

3 个答案:

答案 0 :(得分:1)

您可以在root .htaccess中使用此简单规则:

RedirectMatch 301 ^/folder/?$ /folder/index.php

当URI为/folder/index.php

时,这将重定向到/folder/

答案 1 :(得分:0)

以下条件将告诉Apache在请求的文件存在时不会重写。

RewriteCond %{REQUEST_FILENAME} !-f

如果您有其他类型的重写规则,或者将所有内容发送到单个文件,这将非常有用。

答案 2 :(得分:0)

就在我的头顶,但是怎么样

RewriteRule ^ /?tradeshow / $ ^ / tradeshow / index.php [R = 301,L]