我是靠谱客的博主 内向火车,这篇文章主要介绍nginx配置ssl安全证书,现在分享给大家,希望可以做个参考。

0.先天条件配置完之后一定要重启nginx

1.申请免费的证书

  阿里巴巴,腾讯,便宜SSL..等等

2.完成一系列操作之后得到证书文件(这里只要Nginx中的证书)

  

 

3.将这两个文件放置到服务器中

  可以使用FTP方便简单上传

  

4.配置nginx的配置文件

  

  在文件中添加一个server{}:配置如下

  

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
server { listen 443 ssl; server_name hello.cn; #你的域名(注意要和SSL证书申请的域名一致) ssl_certificate /www/ssl/server.crt; #证书文件目录 ssl_certificate_key /www/ssl/server.key;#证书文件目录 ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root /www/wwwroot/website/;#所要指向的网站目录 index index.html index.htm; } }

 

 

 

  

 

 5.全局配置(所有的二级域名):前提你的ssl证书需支持

  1)nginx.conf

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
server { listen 443 ssl; server_name localhost; ssl_certificate /www/ssl/server.crt; ssl_certificate_key /www/ssl/server.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; }

  2)网站的.conf

  只需要在server里边加上  listen  443即可

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
server { listen 80; listen 443; server_name www.website.cn; index index.php index.html index.htm default.php default.htm default.html; #强制转换为https_START if ($server_port !~ 443){ rewrite ^(/.*)$ https://$host$1 permanent; } #强制转换为https_END root /www/wwwroot/website/; }

 

 

 

  

 6.不同网站配置不同ssl证书

  这里的fullchain.pem和privkey.key两个文件就是对应的证书文件内容(放置的目录根据你常规放置的ssl证书目录来)

  privkey.pem这个文件代表的就是你ssl证书的密钥(有的可能是.key文件,指向这个文件就行)

  fullchain.pem这个文件代表的就是你ssl证书的公钥(有的可能是.crt文件,指向这个文件就行)

复制代码
1
2
3
4
5
6
7
server { listen 80; listen 443 ssl http2; server_name api.website.cn; index index.php index.html index.htm default.php default.htm default.html; root /www/wwwroot/spring;
return 301 https://$server_name$request_uri;#强制https访问
# rewrite ^/(.*) https://ssl.lanbing.org/$1 permanent; #关键代码仔细比较两者的跳转的区别
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#SSL-START SSL相关配置, #error_page 404/404.html; ssl_certificate /www/server/panel/vhost/cert/api.website.cn/fullchain.pem; ssl_certificate_key /www/server/panel/vhost/cert/api.website.cn/privkey.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; error_page 497 https://$host$request_uri; #SSL-END #禁止访问的文件或目录 location ~ ^/(.user.ini|.htaccess|.git|.svn|.project|LICENSE|README.md) { return 404; } #一键申请SSL证书验证目录相关设置 location ~ .well-known{ allow all; } location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; error_log off; access_log /dev/null; } location ~ .*.(js|css)?$ { expires 12h; error_log off; access_log /dev/null; } # 这里非常重要 location /{ proxy_pass "http://localhost:8081"; #代理ip的服务(二者选一) #proxy_set_header Host api.website.cn; #代理的域名(二者选一) proxy_set_header X-Forwarded-For $remote_addr; } access_log /www/wwwlogs/api.website.cn.log; error_log /www/wwwlogs/api.website.cn.error.log; }

  

 

转载于:https://www.cnblogs.com/zhizou/p/10971833.html

最后

以上就是内向火车最近收集整理的关于nginx配置ssl安全证书的全部内容,更多相关nginx配置ssl安全证书内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(81)

评论列表共有 0 条评论

立即
投稿
返回
顶部