2011-01-20 106 views
0

我有这样的规则在我的.htaccess文件:.htaccess中加入301永久移动到重写规则

Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . /index.php 

它的作用是重定向URL所有的index.php文件somevar =#到index.php,但是当它重定向的发出代码302,我希望它是301.

我试图在RewriteRule . /index.php之后添加[R=301],但它不起作用。

一些帮助表示赞赏:-)

回答

2

这件事不符合你的描述。您的规则将每个请求发送至不存在的文件至index.php。网址:

index.php?anything 

已拨打index.php。你不需要任何重写魔术来处理。

也...

RewriteRule . /index.php 

是一种不好的做法。它现在不会引起你的问题,但在将来你可以修改规则。您宁可使用:

RewriteRule .* /index.php