301没有索引的重定向

时间:2011-06-20 06:27:02

标签: .htaccess redirect http-status-code-301

我看到了很多301个问题,但我没有找到解决方案,所以我会在这里发布。

标准301看起来像这样:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.301redirect\.de$
RewriteRule ^(.*)$ http://www.301redirect.de/$1 [L,R=301]

好吧,当我浏览我的网站时,我最终登陆www.domain.tld / index.php / restofquery。我想访问www.domain.tld /当我浏览domain.tld时,我也不想在任何其他查询中使用index.php。所以domain.tld / articlebla应该是www.domain.tld / articlebla。

有什么方法可以实现这个目标吗?

最好的问候。

1 个答案:

答案 0 :(得分:0)

只需添加www即可:

RewriteCond %{http_host} ^301redirect\.de$ [NC]
RewriteRule ^/?$ http://www.301redirect.de/ [R=301,NC]

要添加其他网址部分和www,您可以执行以下操作:

RewriteCond %{http_host} ^301redirect\.de$ [NC]
RewriteRule ^(.*?)/?$ http://www.301redirect.de/$1/ [R=301,NC]

如果您的意思是想要重定向网址上的原始查询字符串,那么这将有效:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.301redirect\.de$
RewriteRule ^(.*)$ http://www.301redirect.de/$1/? [L,R=301]

?的末尾添加RewriteRule意味着不会添加查询字符串。