JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

看了这篇文章,轻松配置Nginx网关支持https协议

wys521 2024-09-14 13:43:59 精选教程 25 ℃ 0 评论

1、配置之前需先安装nginx,mac安装命令:brew install nginx,安装好后nginx的配置在/usr/local/etc/nginx下。

2、安装完成后确认nginx支持ssl,通过命令nginx -V查看安装版本是否带有参数--with-http_ssl_module。

3、若有证书直接放到自定义目录【一般放在和nginx的配置相同目录下】,然后修改nginx配置【可跳过第4步】。

4、通过openssl命令生成证书,在/usr/local/etc/nginx/config下创建目录mkdir ssl_key【只能用来本地调试】:

4.1:生成秘钥:openssl genrsa -des3 -out server.key 1024 【运行后按照提示输入密码】

4.2:生成csr文件:openssl req -new -key server.key -out server.csr 【用于生成证书,该过程需要填一些信息,按照提示填写即可】

4.3:生成证书:openssl x509 -req -in server.csr -out server.pem -signkey server key -days 3650

4.4:若想后续启动和关闭ngin免密的话可以再生产秘钥:openssl rsa -in server.key -out server.key.unsecure

5、配置nginx.conf:

 # HTTPS server
    #
    server {
        listen       443 ssl;
        server_name  localhost;#这里若有实际域名配真实域名

        ssl_certificate      /usr/local/etc/nginx/ssl_key/server.pem;
        ssl_certificate_key  /usr/local/etc/nginx/ssl_key/server.key;#若想免密这里填server.key.unsecure

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
        }
    }


6、若想将http请求重定向为https则在http server下增加配置rewrite ^(.*)$ https://$server_name$request_uri? permanent;

server {
        listen       80;
        server_name  localhost;
	
	     rewrite ^(.*)$ https://$server_name$request_uri? permanent;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }
}


7、重启nginx生效 nginx -s stop & nginx

8、最后在浏览器输入https://localhost,会提示错误,在当前页面直接输入thisisunsafe可进入。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表