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访问了