当前位置:首页Nginx下配置网站ssl实现https访问 举报文章

Nginx下配置网站ssl实现https访问

作者:admin    来源:用户投稿    时间:2015.7.8   

  在今年的早些时候百度搜索已经全面实现https模式,并宣称已经可以抓取https网页了,相比谷歌早年就已经支持https的抓取,百度虽然晚了一点,但是毕竟现在还是有了,也有人探讨关于https模式对百度谷歌seo的影响,虽然还没有人给出实际测试的数据,但是百度全站https模式的话或多或少也能说明百度当下对https站点的态度吧!然后切入主题讲一讲Nginx下配置网站ssl实现https模式访问的方法。

  第一步:服务器环境,lnmp即Linux+Nginx+PHP+MySQL,本文中以我的博客为例,使用的是阿里云最低档的vps+免费的Linux服务器管理系统WDCP快速搭建的lnmp环境(同类产品还有amh有免费版以及收费版),具体安装以及使用方法都可以在其官方论坛找到详细的操作文档。

  第二步:创建你的网站,使用lnmp环境创建你的网站,已有网站的,确保你的程序在lnmp下能够正常的运行,以wordpress为例,lamp跟lnmp下的伪静态规则是不同的,有过更换的,要记得切换。

  第三步:申请免费的ssl证书,关于ssl证书的申请,之前已经有人给出了详细的教程,具体详情可以百度沃通ssl证书。

  第四步:配置网站ssl,找到你需要配置ssl的网站的Nginx配置文件,以WDCP为例配置文件在/www/wdlinux/nginx/conf/vhost/目录,将以下代码添加只网站的配置文件server中,同时为了方便管理,需要将你申请的nginx下的ssl证书上传到/www/wdlinux/nginx/conf/目录,不同的管理系统或者是手动配置的lnmp环境这个目录都是不一样的,请根据你的实际情况进行调整。

  ssl on;

  ssl_certificate_key /www/wdlinux/nginx/conf/pastdust.key;

  ssl_certificate /www/wdlinux/nginx/conf/pastdust.crt;

  因为ssl访问的不是传统网站的80端口,而是443端口则需要在配置文件中继续为网站添加443端口,为了方便不知道把以上放在配置文件的什么位置的人,以下将我网站完整的配置文件贴出,可以根据你的实际情况进行修改。

  server {

  listen 80;

  listen 443;

  server_name pastdust.com www.***.com;

  root /www/web/pastdust_com/public_html;

  index index.html index.php index.htm;

  error_page 400 /errpage/400.html;

  error_page 403 /errpage/403.html;

  error_page 404 /errpage/404.html;

  ssl on;

  ssl_certificate_key /www/wdlinux/nginx/conf/pastdust.key;

  ssl_certificate /www/wdlinux/nginx/conf/pastdust.crt;

  location ~ \.php$ {

  fastcgi_pass 127.0.0.1:9000;

  fastcgi_index index.php;

  include fcgi.conf;

  }

  include rewrite/***.conf;

  }

  确认以上都修改无误之后,重启nginx基本上这个时候你的网站就能通过ssl访问了,但是还有一些细节问题需要调整,譬如以上网站配置文件是http与https模式并存的,还需要做一个跳转,件http模式的访问全部跳转到https模式。

  第五步:网站强制访问https模式,以wordpress为例,将以下的跳转代码添加到当前网站所有使用的伪静态规则conf文件中,即可实现所有的http访问都跳转到https访问,并且是继承目录的,具体实现方法就是把http模式访问301重定向到https模式。

  if ($server_port = 80) {

  return 301 https://$server_name$request_uri;

  }

  if ($scheme = http) {

  return 301 https://$server_name$request_uri;

  }

  error_page 497 https://$server_name$request_uri;

  到这个时候,你访问你网站的某些页面的时候,以使用chrome浏览器为例,部分页面https不会显示绿色,显示的是打X或者是黄色,是因为你网站内部譬如css文件,外链图片等使用的依然是http模式,然后就是最后一步,全站https化。

  第六步:全站https化,以wordpress为例,首先是修改网站主题中所有的https链接元素,然后在数据库中批量替换ssl化之前添加的图片附件,Sql命令如下:

  UPDATE wp_posts SET post_content = replace( post_content, 'http://www.***.com','https://www.***.com') ;

  以上六部即可实现lnmp下网站ssl的配置,并让全站https模式访问,具体的关于https模式访问在百度SEO这一块的表现,需要等待一些时间的数据,因为截至到这篇文章发布位置,我也只是刚刚将博客https化,有需要参考最终实现效果的可以参考我的博客,所有的代码修改都是原版分享没有保留,同时欢迎大家留言探讨。

  原文地址:https://www.pastdust.com/nginx-ssl-https/ 欢迎转载 但请备注来源

好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:配置  网站  实现  访问  
  • 相关搜索
图片推荐
    团队微店,颠覆传统微商平台打造跨行业双赢

    团队微店,颠覆传统微商平台打造跨行业双赢

    从2013年初到如今,微店的发展势头愈发猛烈。电商平台跨界开展微店业务,知名商家入驻各平台开微店,微店已经逐渐成为各个行业的标配。而与此同时,微店行业的佼佼者宅微店在近期公布团队微店正式上线,势于垂直
    经验分享:我是如何把个人博客做到百度第一名的

    经验分享:我是如何把个人博客做到百度第一名的

    博客上线差不多2个多月的时间了,因为注册域名、备案、搭建到上线已经用了一些时间。经过这段时间的努力,已经成功把关键词合肥SEO从没名做到第一名,这个词的优化难度说简单也不简单,但是要说很难也谈不上。想
    成立不到1年就喜获融资 2016年冉冉升起的18颗创业新星

    成立不到1年就喜获融资 2016年冉冉升起的18颗创业新星

    伟大的公司永远都有,即使是在融资遇冷的大环境下。  2016年,一些原本成功的创企出乎意料地倒下了,另一些创企却从婴儿茁壮成长为行业瞩目的新星。这当中,既有立志治愈癌症的,也有用直升机给贫困偏远地区配
    百度考核期我们要注意什么

    百度考核期我们要注意什么

    想必每一位站长都有做新站的经历,新站上线后在一段时间内不会被百度收录,或者只收录首页等,站长们称这段时间为百度考核期。有的站长在这段时间内辛勤耕耘,有的站长则是坐等收录。笔者的个人博客SEO之路seo
    wordpress不同页面侧边栏设置方法

    wordpress不同页面侧边栏设置方法

    我们在wordpress主题开发过程中,有时候需要对不同的页面设计不同的侧边栏,我们先看下实现的最终效果如下图:    在上图我们可以看到,首页与文章页的侧边栏是分开的,这样我们可以很好的控制想显示的
    创业五步绝杀技 你也可以月入十万

    创业五步绝杀技 你也可以月入十万

    对于90后的一群朋友来说,他们现在已经陆续进入社会。大学生创业成了一个热门话题。不管是刚毕业的大学生,还是刚进入大学。每个人都有一个梦想:我要做点什么?今天和大家一起讨论下创业的问题,找项目的方法。 
    美团早餐步呆鹅后尘,早餐O2O发展已经过三个阶段

    美团早餐步呆鹅后尘,早餐O2O发展已经过三个阶段

    8月24日,美团早餐业务停运,这是继杭州呆鹅停运后的又一早餐业务停运。  2014年12月29日,亿欧网曾独家发布,呆鹅停止早餐预订上门业务,最终,其创始人蓝耀栋得出一个结论,早餐若想活下来,只有一个
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面