1:301跳原理
很多人都知道,通过设置301跳转可以将网站从一个地址跳转到另一个地址。但是很多人也遇到过这样的问题,即设置了301跳转之后不生效。那么为什么会出现这种情况呢?
原因是由于301跳转需要服务器的支持,如果您的服务器并不支持301跳转,则是无法生效的。而且,有些服务器也会限制301跳转的数量。所以,如果想要保证 301 跳转的正常使用,就需要先确保服务器对此支持。
另外一个原因是DNS解析问题。如果DNS解析不正常,则无法实现 301 跳转。所以,如果遇到 301 跳转不生效的问题,可以先尝试修复DNS问题。
2:301跳转方法
最近我遇到一个问题,我做的301跳转不起作用。当时我很困惑,后来通过一些研究才弄明白原因。
首先,什么是301跳转?301跳转是一种永久性的重定向方法,它可以让你将一个旧的页面重定向到新的页面。
当你想要对搜索引擎友好地进行重定向时,301跳转就显得很有用。搜索引擎将会识别你的301重定向,并把新页面的权重加到旧页面上。这样,你就可以保留旧页面的权重,而不会失去任何流量。
然而,并不是所有情况下都能成功使用301跳转。如果你做错了以下3件事,你的301重定向就可能失效。
如果你在.htaccess中使用了2次以上的 301 重定向,会导致问题。因为一旦浏览器遇到一个 301 重定向就会立即执行,所以如果有多重重定向就会造成“循环”问题。浏览器不知道该去哪个新地址而死循环。要想避免这个问题,只使用一条 301 重定向就好了。
如果你使用302临时重定向而不是 301 永久性重定向,也会造成问题。
3:301跳转效果
三、301跳转是什么?
简单说,301跳转是永久重定向的一种方法。
通常情况下,当你想要更改网站的URL结构时,就会用到301跳转。
例如,你原来的网站是http://xxx.com,现在想把它改成http://xxx.net,那么你就需要对http://xxx.com做一个301跳转。
这样做的好处是可以保留原来网站的权重,并且不会打断用户的访问。
那么为什么有些人发现自己做了301跳转之后却不生效呢?
这其中有很多原因,我就总结一下常见的几个原因。
如果你使用的是Apache服务器,那么你需要在网站根目录下创建一个 .htaccess 文件,然后写入如下代码:
上面代码中 http://xxx.net 是你希望重定向到的目标URL。
另一个常见的原因是DNS没有正确地将域名映射到目标URL。
例如,上面例子中如果将DNS映射错误的话,http://xxx.net会映射到另外一台服务器上而不是目标URL。
如果你只是对部分页面做重定向而不是整个域名的话,那么很可能重定向之后的URL并不是目标URL。这时候浏览器会出现“404 Not Found” 等错误。
总之,要想301重定向生效,你要注意以上几个常见原因。