首页 » WordPress教程 » 正文

OpenShift301重定向出现此域名包含重定向循环问题

为了SEO优化一般都会做301重定向,将带www.的域名跳转到不带www,或者将不带www.的跳转到带www.的域名上,小菜采用的是在.htaccess中写入代码来实现301跳转,相信很多站长也是使用的这种简单实用的方法,代码如下:

RewriteEngine On
RewriteCond %{http_host} ^blogxc.com$ [NC]
RewriteRule ^(.*)$ http://www.blogxc.com/$1 [R=301,L]

但是搬到OpenShift后,就出现了访问www.blogxc.com没问题,访问blogxc.com浏览器就提示此网页包含重定向循环无法显示的问题,在爱森家园 的《openshift近日更新导致以往.htaccess无效解决方法及301重定向各类写法集》一文中看到,换用以下代码可以解决,

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.example.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301]

但这种写法有个问题根域名example.com和所有子域名都会跳转到www.example.com,如果你有子域名做其他站点就会不方便,对比下原代码,其实差别只是在http://www.example.com/$1与http://www.example.com$1,将原代码里的/去掉就不会出现重定向循环了,至于加/与不加/的区别,小菜还不知道,希望大牛给解释下
修改后的代码如下:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com$1 [L,R=301]

本文共 6 个回复

  • BB 2017/01/20 10:54

    还没讲解么

  • 水墨 2017/01/10 18:28

    你好,我有一个问题是我不知道openshift的.htaccess文件如何打开啊? :?: :?: :?:

    • 小菜 博主 2017/01/12 23:30

      @ 水墨 可以使用SSH连接来管理,或是Winscp管理,又或是上传个在线的文件管理器,直接在网页端修改

      • 水墨 2017/01/16 06:37

        @ 小菜 我已经找到了,只是当时我没有选择显示隐藏的文件而已,我有一些其他的做博客的问题想请教你,你看怎么联系你方便一些呢?

  • sd 2016/04/17 23:52

    测试

发表评论