我有一个不再需要的网站,并且有一个保留页面设置,表明它已不再可用。所有对网站页面的请求(加书签或其他)都需要发送到这个页面,这是root index.php页面,所以我使用了一些htaccess来相应地重定向。
我目前正在使用它:
RewriteCond %{REQUEST_URI} !^/index.php$
RewriteRule ^(.*)$ /index.php [R=302,NC,L]
完成这项工作,但将index.php添加到网址 - 即。 www.domain.com访问www.domain.com/index.php
拥有www.domain.com会好得多,但显然我不能这样做:
RewriteCond %{REQUEST_URI} !^/$
RewriteRule ^(.*)$ / [R=302,NC,L]
它在firefox中提供了一个页面无法正确重定向错误。
我已经期望上面检查REQUEST_URL是否不是/ - 即。 www.domain.com然后将其重定向到/例如。 www.domain.com/dave.php - > www.domain.com - 因此www.domain.com通过,但其他一切都被重定向......它实际上在做什么以及如何让它做我想做的事情?
答案 0 :(得分:14)
就这样使用它:
RewriteRule ^.+$ / [R=302,NC,L]
它会将所有与/
不匹配的内容重定向到/
。
答案 1 :(得分:0)
你的问题解决了吗?如果没有,你试过了吗?
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule . /index.php [L]