nginx+php站点配置https

    今天准备搞一个小程序测试一下,结果发现如果要链接我的站点,那就必须要站点支持https。所以就顺便鼓捣一下把站点升级一下,增加https的访问支持。
    首先解决的就是证书问题,一个个人blog就没有必要买证书了,发现证书老贵老贵的。所以找了找免费证书,最后发现腾讯云提供的还是比较好的,很方便申请,这里https://buy.cloud.tencent.com/ssl 直接选择免费证书,输入自己的域名就可以申请了,再按照他的流程就可以生效了,最后下载下来就可以用了。阿里云说是有,但是我的申请界面没有看到,所以没法用。
    这里记录一下在nginx+php网站怎么折腾的。
首先上传证书,使用xshell,很方便。
sftp: /usr/local/nginx/ssl> put
Uploading 1_zhwen.org_bundle.crt to remote: /usr/local/nginx/ssl/1_zhwen.org_bundle.crt
Uploading 2_zhwen.org.key to remote: /usr/local/nginx/ssl/2_zhwen.org.key
在配置一下nginx的配置文件就可以了,配置基本上参考腾讯云的官方指导就可以了
server {
        listen 443;
        server_name www.zhwen.org zhwen.org;
        root /datax/www/zhwen.org/;
        index index.html index.php;
#
        ssl on;
        ssl_certificate /usr/local/nginx/ssl /1_zhwen.org_bundle.crt;
        ssl_certificate_key /usr/local/nginx/ssl/2_zhwen.org.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 / {
                try_files $uri $uri/ =404;
        }
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }
}
修改完成之后测试一下
root@helight:/usr/local/nginx # /usr/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/nginx.conf test is successful
root@helight :/usr/local/nginx # /usr/sbin/nginx -s reload
完美。
不过证书是一年到期,到期之后要重新申请更换。
感觉有意思?来鼓励鼓励我!
打赏黑光技术

Leave a Reply

Your email address will not be published. Required fields are marked *