nginx下http如何转https访问

  1. 申请ssl证书

    可以到腾讯云中申请一个免费的ssl证书,下载证书找到nginx目录下的 .crt,.key结尾的文件;申请过程可以参考我的另一篇博客

  2. 证书安装

    将下载下来的证书,上传到你的服务器的某一位置上,例如:/usr/local/nginx/文件下

  3. nginx配置

    https通常监听443端口,所以我们也是监听443端口;然后在nginx.conf或者你的vhost的配置文件添加一个server{};

server {
        listen 443 ssl;
        server_name zaozu.mai1.com;
        charset      utf-8;

        index  index.php index.html;
        root /home/www/zhaozu/amai-www/public; //项目根目录root不能使用变量的形式
        ssl on;
        ssl_certificate /usr/local/nginx/zaozu/1_zaozu.mai1.com_bundle.crt;
        ssl_certificate_key /usr/local/nginx/zaozu/2_zaozu.mai1.com.key;
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_prefer_server_ciphers on;


        location ~ \.php$ { //必须有,不然无法解析php文件;访问首页下载文件是因为无法解析php文件
                try_files $uri =404;
                 fastcgi_buffer_size 128k;
                fastcgi_buffers 32 32k;
                fastcgi_pass   unix:/var/run/php5-fpm.sock;
                #fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
         }

        location / { // 让二级域名下的方法也能被https访问,不只是xxx.mai1.com能访问
                try_files $uri $uri/ /index.php$is_args$args;
        }

}

  4. 配置完成,你的网站就可以用http,https访问了

猜你喜欢

转载自blog.csdn.net/StimmerLove/article/details/82797797
今日推荐