loveshare123

qq:449034553
爱分享:旨在分享,重在分享,分享生活点点滴滴,分享人生百态,分享健康,分享美食等等,只要是你感兴趣的,可以你需要的,就是我们要分享的

SEO技术

当前位置:主页 > 武汉SEO服务 > SEO技术 >

通过301重定向把不带www的域名跳转到带www的域名

发布时间:2017-10-20点击量:

      前两天刚刚做了一个网站,很多设置完成后,就没有很关注这些设置了,今天在百度随手搜索域名的时候,发现带出来了2个网站链接,一看原来是忘记对网站做301重定向了。这样网站到了后期的时候,可能会分散网站的权重。虽然有的人喜欢用不带www的域名作为主域名,但是人们很多情况下还是喜欢使用带www的域名,一般情况下还是做了301跳转把带www的作为主域名。但是很多301跳转只能实现首页的跳转。
      对于万网虚拟机来实现首页的301从定向很简单,可以根据万网虚拟主机提供的配置借口直接进行配置:先打开网页,
登录万网首页,登录你管理控制台,在管理控制台里找到云虚拟主机设置页面,点击后边的管理按钮,打开基础环境设置里边的301重定向,添加域名,在原域名里面选择不带www的域名,在目标域名里面选择带www的域名,然后点击后面的添加按钮,首页的301重定向就完成了。
万网虚拟主机首页301重定向
      
但是针对网站下面建立的子目录,跳转功能就出现了问题,子目录不能实现www和不带www的301跳转,那么如何实现整站从带www上跳转到带www上呢?我没有亲自测试,在这里找了一篇教学,如下:

刚开始在根目录的.htaccess文件中设置统一的php301跳转代码,但是我发现首页可以正常跳转,但是子目录虽然可以实现跳转,但是如果子目录和首页不是同一个程序还是会跳转成和首页一样的链接结构,就会出现404页面,当然假如两个网站是使用同一个程序(比如两个网站都是WordPress),这个方法就是有效的。

但是事实上,大部分两个网站都会是不同程序,比如一个是WordPress,另一个是Dedecms,那就要通过单个目录分别设置不同的.htaccess规则。为了防止伪静态规则冲突,就需要通过如下方法来解决:

第一步:根目录.htaccess规则设置

RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

第二步:单个目录强制重定向到www

RewriteEngine on

RewriteCond %{HTTP_HOST} ^example.com$ [NC]

RewriteRule ^(.*)$ http://www.example.com/ABC/$1 [R=301,L]

RewriteBase /ABC/

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^.*$ index.php?$0

注意:将静态页面301跳转代码中的示例example域名及示例文件夹ABC换成你自己对应的域名及文件夹名称。
你对自己的网站做了301重定向了吗?

谢谢大家对爱分享(loveshare123)的支持.

如需转载请注明出处:http://www.loveshare123.cn/seojishu/43.html