文件不存在时.htaccess重定向

时间:2011-04-13 21:20:49

标签: .htaccess redirect

所以我使用.htaccess将旧网站页面重定向到新的网站页面。我文件中的典型规则如下:

重定向301 /faqs.php http://blueprintprep.com/classroom/faq

奇怪的是,当旧文件存在于服务器上时,它可以正常工作,但是当我删除文件时,最终的URL实际上是这样的:

http://blueprintprep.com/classroom/faq?/faqs.php

蓝色火焰发生了什么?

该文件由一系列这些规则组成,适用于CodeIgniter:

    RewriteEngine On     RewriteBase /     RewriteCond%{REQUEST_URI} ^ system。*     RewriteRule ^(。*)$ /index.php?/$1 [L]     RewriteCond%{REQUEST_URI} ^申请。*     RewriteRule ^(。*)$ /index.php?/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]

RewriteRule ^application_consulting/(.*) http://blueprintprep.com/oneonone/app_consulting [R=301,L]
RewriteRule ^weekend/(.*) http://blueprintprep.com/classroom [R=301,L]
RewriteRule ^workshop/(.*) http://blueprintprep.com/oneonone [R=301,L]

1 个答案:

答案 0 :(得分:1)

您可以改为使用mod_rewrite

RewriteEngine on
RewriteRule ^/faqs.php$ /classroom/faq [L,R=301]

无论文件是否存在,这都可以。

希望有所帮助。

相关问题