Tools
首页
画图
音乐
采集
记事
博客
实验室
登录
lypeng
146
文章
11
分类
46
记事
分类
生活-[23]
Linux-[24]
前端-[9]
数据库-[16]
PHP-[31]
git-[7]
其他-[6]
python-[20]
算法-[4]
React-Native-[4]
中草药-[2]
广告位1
广告位2
首页
/ Linux
返回列表
Nginx配置HTTPS,并实现域名http到https跳转
阅读:978
发布:2017-09-01
作者:lypeng
### 简要介绍 1. 服务器是腾讯云的centos系统,lnmp1.4搭建的php环境 2. 域名dpshop.net在腾讯云已经申请了SSL证书(有效期一年) 3. 网站 dpshop.net 与 www. dpshop.net ,均已经解析 4. 实现效果:当用户访问dpshop.net与www. dpshop.net 跳转到 https:// www. dpshop. net ### 具体实施 1. 上传证书到/usr/local/nginx/conf/ssl/目录中 2. 修改配置文件,例如我的dpshop.conf,重点部分代码见最下面 3. 重启 `lnmp nginx restart` 4. End,结束!你可以访问测试 这三个域名:http://dpshop.net http://www.dpshop.net https://dpshop.net 都会跳转到:https://www.dpshop.net ```bash server { listen 80; #所有域名通过80端口,即http访问,跳转到https server_name dpshop.net www.dpshop.net; return 301 https://www.dpshop.net$request_uri; } server { listen 443; server_name dpshop.net www.dpshop.net; index index.php index.html; root /home/wwwroot/dpshop; ### 2018-06-22更新 ### 添加下面这个if,防止当用户直接访问https://dpshop.net的时候报错 ### ### 注意if后面留空格,= 两边留空格,这里用了两个if,nginx不支持and,or写法 if ($host = "dpshop.net") { return 301 https://www.dpshop.net$request_uri; } ####--下面是重点部分----######### ssl on; ssl_certificate ssl/1_www.dpshop.net_bundle.crt; #注意路径要写对 ssl_certificate_key ssl/2_www.dpshop.net.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; ################################# #下面是针对thinkphp去掉index.php的rewrite配置 location / { if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?s=$1 last; break; } } } ``` 2017-09-01 15:27:13 星期五 °+°
------本文结束
感谢阅读------
上一篇:
[转]这篇文章可以帮你掌握命令行的艺术
下一篇:
Ubuntu下提示/usr/bin/env: node: 没有那个文件或目录