.htaccess文件不存在时重定向
因此,我使用.htaccess将旧网站页面重定向到新的网站页面。在我的文件基本的规则是这样的:.htaccess文件不存在时重定向
重定向301 /faqs.php http://blueprintprep.com/classroom/faq
奇怪的是,当旧的文件服务器上存在它工作正常,但是当我删除文件,最终实际网址看起来是这样的:
http://blueprintprep.com/classroom/faq?/faqs.php
什么蓝色大火是怎么回事?
该文件是由一帮这些规则,这对笨:
RewriteEngine叙述在 RewriteBase/ 的RewriteCond%{REQUEST_URI} ^系统* 重写规则^(。*)$ /指数。 .PHP?/ $ 1 [L] 的RewriteCond%{REQUEST_URI} ^应用。* 重写规则^(。*)$ /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]
您可以改用mod_rewrite
。
RewriteEngine on
RewriteRule ^/faqs.php$ /classroom/faq [L,R=301]
无论文件是否存在,这都会起作用。
希望有所帮助。
谢谢,这个作品很棒:)我仍然好奇为什么当文件不存在时会出现奇怪的结果? – SideDishStudio 2011-04-13 21:41:17
它看起来像是你的第一个'RewriteRule','RewriteRule ^(。*)$ index.php?/ $ 1 [L]'的结果。我不确定'index.php'在哪里,但这是我的第一个想法。 – clmarquart 2011-04-13 21:44:45
其实,我刚刚看到它的重写,而不是重定向,所以它不应该影响实际的URL ... – clmarquart 2011-04-13 21:45:55
htaccess文件还有什么? – 2011-04-13 21:22:37