大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
基于ngnix的https配置
1.证书上传
1)申请证书请参照官方文档,然后把已经颁发下来的证书下载下来。
2)解压文件,然后把ngnix文件夹下的1_xxx.com_bundle.crt和2_xxx.com.key上传到服务器的nginx配置文件目录(上传到同一目录),如:/usr/local/nginx/conf,我上传的目录是/usr/local/nginx/conf/ssl/www。我的服务器上的nginx安装在/usr/local/nginx目录。
2.证书安装
修改/usr/local/nginx/conf目录下nginx.conf配置文件。
server {
listen 443 ssl; #监听443端口
server_name xxx.com;#域名,换成自己域名
ssl_certificate ssl/www/1_xxx.com_bundle.crt;#证书路径,换成自己证书名
ssl_certificate_key ssl/www/2_xxx.com.key;#key路径,换成自己key
ssl_session_timeout 5m; #会话过期时间
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; #为建立安全连接,服务器所允许的密码格式列表
ssl_prefer_server_ciphers on; #依赖SSLv3和TLSv1协议的服务器密码将优先于客户端密码
location / {
root /usr/share/nginx/html; #域名访问的根目录,换成自己根目录
index index.html index.htm index.php;
}
location ~ \.php$ {
root /usr/share/nginx/html; #域名访问的根目录,换成自己根目录
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
配置完成后,先用nginx下的./sbin/nginx –t来测试下配置是否有误,正确无误的话,重启nginx(./sbin/nginx –s reload)。就可以使 https://xxx.com (自己域名)来访问了。 注释:
配置文件参数 | 说明 |
---|---|
listen 443 | SSL访问端口号为443 |
ssl on | 启用SSL功能 |
ssl_certificate | 证书文件 |
ssl_certificate_key | 私钥文件 |
ssl_protocols | 使用的协议 |
ssl_ciphers | 配置加密套件,写法遵循openssl标准 |
3 使用全站加密,http自动跳转https
对于用户不知道网站可以进行https访问的情况下,让服务器自动把http的请求重定向到https。 在nginx.conf配置文件的http的监听80端口的server中,找到
location / {
#root html;
rewrite ^(.*) https://$host$1 permanent; #重定向到https
index index.php index.html index.htm;
}
配置,在里面增加重定向配置 rewrite ^(.*) https://$host$1 permanent; 配置完成后,先用nginx下的./sbin/nginx –t来测试下配置是否有误,正确无误的话,重启nginx(./sbin/nginx –s reload)。就可以使 http://xxx.com (自己域名)来访问了,看看是否在浏览器中自动变成https链接。
4.遇到的问题
- 按照腾讯云官方文档配置完成443端口监听后,用https://xxx.com访问网站显示不能打开网页。这应该是第二步的证书安装里的nginx.conf文件没有配置正确,按照我的配置应该就可以。如果还是不能解决,请重启nginx时采用先停止,./sbin/nginx –s stop,然后加载配置文件的方式重启 ./sbin/nginx –c ./conf/nginx.conf。
- 按照网上增加server的方式让http自动跳转到https没有成功。如下配置是网上的配置方式。请按照我第三步的方式配置。
server {
listen 80;
server_name liuhangs.com;
#return 301 https://$server_name$request_uri;
rewrite ^(.*)$ https://$server_name$1 permanent;
}
转载于:https://my.oschina.net/u/4038621/blog/3045137
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197695.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...