千家信息网

使用nginx怎么设置https网站

发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,使用nginx怎么设置https网站?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、HTTPS简介1.https简介HTTPS其实
千家信息网最后更新 2025年02月04日使用nginx怎么设置https网站

使用nginx怎么设置https网站?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

一、HTTPS简介

1.https简介

HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据

2.https协议原理

首先,客户端与服务器建立连接,各自生成私钥和公钥,是不同的。服务器返给客户端一个公钥,然后客户端拿着这个公钥把要搜索的东西加密,称之为密文,并连并自己的公钥一起返回给服务器,服务器拿着自己的私钥解密密文,然后把响应到的数据用客户端的公钥加密,返回给客户端,客户端拿着自己的私钥解密密文,把数据呈现出来

二、证书和私钥的生成

注意:一般生成的目录,应该放在nginx/conf/ssl目录

1.创建服务器证书密钥文件 server.key:

openssl genrsa -des3 -out server.key 1024

输入密码,确认密码,自己随便定义,但是要记住,后面会用到。

2.创建服务器证书的申请文件 server.csr

openssl req -new -key server.key -out server.csr

输出内容为:

Enter pass phrase for root.key: ← 输入前面创建的密码
Country Name (2 letter code) [AU]:CN ← 国家代号,中国输入CN
State or Province Name (full name) [Some-State]:BeiJing ← 省的全名,拼音
Locality Name (eg, city) []:BeiJing ← 市的全名,拼音
Organization Name (eg, company) [Internet Widgits Pty Ltd]:MyCompany Corp. ← 公司英文名
Organizational Unit Name (eg, section) []: ← 可以不输入
Common Name (eg, YOUR name) []: ← 此时不输入
Email Address []:admin@mycompany.com ← 电子邮箱,可随意填
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: ← 可以不输入
An optional company name []: ← 可以不输入

4.备份一份服务器密钥文件

cp server.key server.key.org

5.去除文件口令

openssl rsa -in server.key.org -out server.key

6.生成证书文件server.crt

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

三、配置文件

1.下面为配置文件 /usr/local/nginx/conf/vhost/daj.conf

server{#比起默认的80 使用了443 默认 是ssl方式 多出default之后的ssl    listen 443 default ssl;#default 可省略#开启 如果把ssl on;这行去掉,ssl写在443端口后面。这样http和https的链接都可以用    ssl on;#证书(公钥.发送到客户端的)    ssl_certificate ssl/server.crt;#私钥,    ssl_certificate_key ssl/server.key;#下面是绑定域名    server_name www.daj.com;    location / {#禁止跳转    proxy_redirect off;#代理淘宝proxy_pass https://www.tao.com/;     }    }

四、开启nginx的ssl模块

1.the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:37

原因是nginx缺少http_ssl_module模块,编译安装时带上--with-http_ssl_module配置就可以了

2.如果已经安装过nginx,想要添加模块看下面

1)切换到nginx源码包

cd /usr/local/src/nginx-1.11.3

2)查看ngixn原有的模块

/usr/local/nginx/sbin/nginx -V

3)重新配置

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

4)重新编译,不需要make install安装。否则会覆盖

make

5)备份原有已经安装好的nginx

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

6)将刚刚编译好的nginx覆盖掉原来的nginx(ngixn必须停止)

cp ./objs/nginx /usr/local/nginx/sbin/

这时,会提示是否覆盖,请输入yes,直接回车默认不覆盖

7)启动nginx,查看nginx模块,发现已经添加

/usr/local/nginx/sbin/nginx -V 

关于使用nginx怎么设置https网站问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

客户 服务 输入 文件 服务器 公钥 模块 客户端 证书 加密 数据 生成 配置 密文 密码 端的 问题 编译 网站 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 教育系统网络安全工作方案 如何管理应用软件开发存在的风险 在数据库中日期属于什么 数据库输入三个数字 平台存储管理服务器配置清单 服务器bios界面格式化硬盘 补考数据库应用技术卷子 服务器管理器 开机取消 就业的网络技术有哪些 网络技术咨询服务 企业管理软件开发公司排名 关于软件开发的职业规划书 大专计算机网络技术学编程代码吗 网络技术课程实验命令大全 规则库网络安全 软件开发应用类型 如何保障文件服务器的安全 网络安全意识培养总结 网游代理软件开发教程 西门子om650 数据库 联想ts430服务器指示灯 mongo 数据库重命名 共享型锁排他型锁和数据库 四川人工智能软件开发价钱是多少 删除ajax返回数据库 补考数据库应用技术卷子 软件开发公司没钱发工资 新罗县网络安全交易日 网心云x86服务器多拨教程 代理服务器 路由器
0