现在的位置:首页>wordpress>正文

Nginx下让WordPress支持HTTP和HTTPS同时访问

2016年09月25日 ⁄ 共 1188字 评论 2 条

越来越多的站点,启用了https,现在网上免费的ssl也有很多,想试的朋友可以找一下试试效果,而就在前几天,Google Chrome正式将某些HTTP网页标记为不安全,这意味着HTTPS也是大势所趋了,不过在国内,百度搜索引擎和其它的,对https的支持还不是很友好,所以我们需要进行相应的设置,这里部落以Nginx为例,那些和部落一样安装军哥lnmp的可以直接使用,来说明让WordPress支持HTTP和HTTPS同时访问的方法.

很多朋友估计都会遇到这种情况,头脑一热,就直接启用HTTPS协议,全站跳转到HTTPS,随之而来的问题出现了,SEO肿么办,度娘并不对HTTPS友好,部落记得之前有朋友和我说,其在启用协议的第三天,权重掉了.

Nginx下让WordPress支持HTTP和HTTPS同时访问的方法

1、在wp-config.php中加入以下代码,作用为:匹配当前的访问域名,并且强制后台访问HTTPS(优点,加密访问后台)

  1. $site_url = (isset($_SERVER['SERVER_PORT']) && ('443' == $_SERVER['SERVER_PORT']) ? "https://" : "http://") . "www.mfbuluo.com";
  2. define('WP_SITEURL', $site_url);
  3. define('WP_HOME', $site_url);
  4. define("WP_CONTENT_URL"$site_url . "/wp-content");
  5. /*  强制使用SSL进行登录和后台管理  */
  6. define('FORCE_SSL_LOGIN', false);
  7. define('FORCE_SSL_ADMIN', true);

2.接下来,我们还需要根据user-agent来判断是否为百度蜘蛛,以下代码请自行加入nginx配置的适当位置.

  1. set $spider_flag 0;
  2.         if ( $http_user_agent !~* "Baiduspider" ) {
  3.                 set $spider_flag "${spider_flag}0";
  4.         }
  5.         if ( $server_port ~ "80" ) {
  6.                 set $spider_flag "${spider_flag}0";
  7.         }
  8.         if ( $spider_flag = "000" ) {
  9.                 rewrite (.*)$ https://www.mfbuluo.com$1 permanent;
  10.         }

记得将上面的网址修改为自己的HTTPS地址.

小结

文章中的方法来源自网络,由免费部落整理发布.

评论 2 条 评论内容很精采,有内幕,而且绝对有干货

  1. 我爱动感单车网 2016年09月25日 16:21  @回复  Δ-49楼 回复

    HTTPS,真到了它独步天下的那天再说了。

    • 管理员 2016年09月25日 18:00  @回复  ∇地下1层 回复

      很多人都在等百度,谷歌的话,现在到了非得要上的时间了.

给我留言