如何创建htaccess 301重定向到url中带有哈希的新地址(例如:example.com/#clients)

时间:2014-01-10 23:29:59

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

我创建了一个单页网站,现在我想将旧链接重定向到主页,最好是正确的部分。

如何使用hash un url(即example.com/#clients)将htaccess 301重定向到新地址

搜索引擎/谷歌可以使用哈希吗?有关系吗?

谢谢。

3 个答案:

答案 0 :(得分:2)

网址的哈希部分永远不会到达网络服务器。当客户端浏览器向Web服务器发送URL请求时,它会将所有内容发送到井号,因此您不会获得哈希服务器端。

如果您想在重定向网址中转义它,只需使用附加[R = 301,NE,L]的网格标记到您的重写链接。

答案 1 :(得分:1)

在旧网站上将此代码放入DOCUMENT_ROOT/.htaccess文件中:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?oldsite\.com$ [NC]
RewriteRule ^ http://www.newsite.com/#clients [L,NE,R=301]

在网址中使用#不会导致您的SEO排名出现任何问题。

答案 2 :(得分:0)

我结合了一些教程和示例,并使用此代码:

RewriteRule ^en/contact.*$ http://domain.com/en/#contact [R=301,NE,L]

http://example.com/en/contact重定向 ---> http://example.com/en/#contact

有效。

但这与anubhava的例子有什么不同:

RewriteCond %{HTTP_HOST} ^(www\.)?oldsite\.com$ [NC]
RewriteRule ^ http://www.newsite.com/#clients [L,NE,R=301]