阿里云ESC+Nginx安装SSL实现HTTPS

阿里云的服务器,安装了lnmp一键安装包,要实现HTTPS访问,不但可以有好看的小绿锁,还可以增加搜索引擎的权重。我的ssl是因为买了阿里云的服务器所以可以免费使用。现在和大家分享安装方法:
首先我们要在nginx的配置文件中添加以下内容(lnmp一键安装包默认的地址在/usr/local/nginx/conf)

server
    {
    listen 443 ssl;
    server_name jian2.com www.jian2.com;
    index index.php index.html index.htm;
    root  /home/wwwroot; #换成你自己的网站根目录
    ssl_certificate  /usr/local/nginx/cert/ssl.pem;#换成你自己的密钥地址
    ssl_certificate_key  /usr/local/nginx/cert/ssl.key;#换成你自己的密钥地址
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on; 		
	include rewrite/thinkphp.conf;
    include enable-php-pathinfo.conf; 		
	if (!-e $request_filename) {
            rewrite ^(.*)$ /index.php$1 last;
   } 	location ~ \.php{
            fastcgi_pass unix:/tmp/php-cgi.sock;

            fastcgi_index index.php;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

            include fastcgi_params;
    }
    }

大家可以参考以上的内容换成自己的。其中这段:

location ~ \.php{
     fastcgi_pass unix:/tmp/php-cgi.sock; 
     fastcgi_index index.php; 
     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
     include fastcgi_params;
     }

如果没有的话,可能会造成php文件无法解析,就变成了打开网站就自动下载php内容,但是html访问正常的情况,我为此困扰了2天时间,重做环境、初始化磁盘。恼呀。
如果要实现全站https,还需要再加入下面这个:

server {
       listen 80;
       server_name localhost;   #将localhost修改为您证书绑定的域名,例如:www.jian2.com。
       rewrite ^(.*)$ https://$host$1 permanent;   #将所有http请求通过rewrite重定向到https。
       location / {
       index index.php index.html index.htm;
        }
        }

添加完以后别忘了使用

nginx -t

检查一下是否成功,如果成功了就重启nginx服务。

service nginx restart

本方法适合新手,要是还有什么不会的欢迎留言交流。

 

关于作者:放弃江南

有时候心情会突然的很低落,不想说话也不想动。别人问起,也不知道该怎样回答。真的,我不是假装沉默,只是无力诉说。

分享到:
赞(0) 打赏

评论抢沙发

评论前必须登录!

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏