百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

阿里架构师讲面试:Nginx 配置 HTTPS 完整过程,细致入微全是精华

off999 2025-01-08 16:28 21 浏览 0 评论

配置站点使用 https,并且将 http 重定向至 https。

1. nginx 的 ssl 模块安装

  • 查看 nginx 是否安装 http_ssl_module 模块。
$ /usr/local/nginx/sbin/nginx -V

如果出现 configure arguments: --with-http_ssl_module, 则已安装(下面的步骤可以跳过,进入 nginx.conf 配置)。

  • 下载 nginx 安装包
# 下载安装包到 src 目录
$ cd /usr/local/src
$ wget http://nginx.org/download/nginx-1.14.1.tar.gz
  • 解压安装包
$ tar -zxvf nginx-1.14.1.tar.gz
  • 配置 ssl 模块
$ cd nginx-1.14.1
$ ./configure --prefix=/usr/local/nginx --with-http_ssl_module
  • 使用 make 命令编译(使用make install会重新安装nginx),此时当前目录会出现 objs 文件夹。
  • 用新的 nginx 文件覆盖当前的 nginx 文件。
$ cp ./objs/nginx /usr/local/nginx/sbin/
  • 再次查看安装的模块(configure arguments: --with-http_ssl_module说明ssl模块已安装)
$ /usr/local/nginx/sbin/nginx -V

nginx version: nginx/1.14.1

configure
arguments: –with-http_ssl_module

2. ssl 证书部署

  • 下载申请好的 ssl 证书文件压缩包到本地并解压(这里是用的 pem 与 key 文件,文件名可以更改)。
  • 在 nginx 目录新建 cert 文件夹存放证书文件。
$ cd /usr/local/nginx
$ mkdir cert
  • 将这两个文件上传至服务器的 cert 目录里。
    这里使用 mac 终端上传至服务器的 scp 命令(
    这里需要新开一个终端,不要使用连接服务器的窗口):
$ scp /Users/yourname/Downloads/ssl.pem root@xxx.xx.xxx.xx:/usr/local/nginx/cert/
$ scp /Users/yourname/Downloads/ssl.key root@xxx.xx.xxx.xx:/usr/local/nginx/cert/

scp [本地文件路径,可以直接拖文件至终端里面] [<服务器登录名>@<服务器IP地址>:<服务器上的路径>]

3. nginx.conf 配置

编辑 /usr/local/nginx/conf/nginx.conf 配置文件:

  • 配置 https server。
    注释掉之前的 http server 配置,新增 https server:
server {
    # 服务器端口使用443,开启ssl, 这里ssl就是上面安装的ssl模块
    listen       443 ssl;
    # 域名,多个以空格分开
    server_name  baidu.com www.baidu.com;
<span class="hljs-comment"># ssl证书地址</span>
<span class="hljs-attribute">ssl_certificate</span>     /usr/local/nginx/cert/ssl.pem;  <span class="hljs-comment"># pem文件的路径</span>
<span class="hljs-attribute">ssl_certificate_key</span>  /usr/local/nginx/cert/ssl.key; <span class="hljs-comment"># key文件的路径</span>
<span class="hljs-comment"># ssl验证相关配置</span>
<span class="hljs-attribute">ssl_session_timeout</span>  <span class="hljs-number">5m</span>;    <span class="hljs-comment">#缓存有效期</span>
<span class="hljs-attribute">ssl_ciphers</span> ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;    <span class="hljs-comment">#加密算法</span>
<span class="hljs-attribute">ssl_protocols</span> TLSv1 TLSv1.<span class="hljs-number">1</span> TLSv1.<span class="hljs-number">2</span>;    <span class="hljs-comment">#安全链接可选的加密协议</span>
<span class="hljs-attribute">ssl_prefer_server_ciphers</span> <span class="hljs-literal">on</span>;   <span class="hljs-comment">#使用服务器端的首选算法</span>
<span class="hljs-attribute">location</span> / {
    <span class="hljs-attribute">root</span>   html;
    <span class="hljs-attribute">index</span>  index.html index.htm;
}
  • 将 http 重定向 https
server {
    listen       80;
    server_name  baidu.com www.baidu.com;
    return 301 https://$server_name$request_uri;
}

4. 重启 nginx

$ /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

如果 80 端口被占用,用kill [id]来结束进程:

# 查看端口使用
$ netstat -lntp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:80 0.0.0.0: LISTEN 21307/nginx: master

tcp 0 0 0.0.0.0:22 0.0.0.0: LISTEN 3072/sshd

tcp 0 0 0.0.0.0:443 0.0.0.0 LISTEN 21307/nginx: master

# 结束 80 端口进程

$ kill 21307

再次重启 nginx :

$ /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

无信息提示就成功啦~

相关推荐

daemon tools lite下载(daemon tools lite中文版)

您好,DAEMONToolsLite是一款免费的虚拟光盘制作软件,可以帮助用户在计算机上模拟CD、DVD和Blu-ray光盘。以下是使用DAEMONToolsLite的简单步骤:1.下...

电脑一键关机快捷方式(电脑一键关机是哪个键)

方法一、快捷键关机法在电脑桌面上,按Alt+F4组合键,弹出关闭windows窗口,点击确定或回车即可关机方法二、自创快捷键关机法鼠标右键单击桌面空白处,选择新建,点击快捷方式弹出窗口,在键入对象的位...

windows server 2019价格(windows servers 2019)

windows2019server是微软公司推出的一款最新服务器操作系统,我安装使用后个人感觉是一个服务器版本的win10,但是也听到人反映不好用,只能这样认为:1、各行各业随时随地都存在扛精,...

电脑开机后死机卡住不动(电脑开机后死机卡住不动是什么原因)

1.重启电脑:在目前情况一切正常重启电脑,或按主机重启键重启电脑,或先长按锁屏键强制关机再次开机,假如不会再发生报错而且可以一切正常进到系统操作,表明之前异常仅仅时不时地应用程序或系统运行错误,无关痛...

电脑之家重装系统(电脑之家重装系统教程)

方法/步骤:删除多余启动选择1、按Win+R组合键,打开运行,并输入:msconfig命令,确定或回车,打开系统配置窗口;2、系统配置窗口,切换到引导选项卡下,然后删除多余的系统启动项即可;...

闪迪u盘写保护了怎么办(闪迪u盘读写保护)

1.当使用的u盘被写保护时,首先我们点击“开始”菜单,选择“运行”选项。2.然后在运行页面的打开一栏中输入“regedit”指令,按下回车键确认。3.此时进入“注册表编辑器”页面后,按序打开以下文件夹...

qq空间在线查看网页版(qq空间在线查看网页版官网)
qq空间在线查看网页版(qq空间在线查看网页版官网)

QQ空间是腾讯的互动空间应用,现在有专门的APP。除了手机之外,电脑端都是用网页来访问登录。具体操作步骤如下:1、打开网页搜索,查询QQ空间,找到QQ空间网页登录地址。然后选择,输入QQ账号密码,如下图所示:2、如果你电脑登录了QQ账号...

2025-12-07 08:03 off999

软件大全下载app免费(软件大全下载app免费)

下载无忧(www.xiazai51.com)是一个绿色、安全、免费的下载网站,为给大家提供优质的下载服务,本网站程序由专业团队自主研发,不采用第三方模板,网站程序拥有自主知识产权。网站提供提供电脑软件...

qq密码找不回来了怎么办(qq密码实在找不回来)
  • qq密码找不回来了怎么办(qq密码实在找不回来)
  • qq密码找不回来了怎么办(qq密码实在找不回来)
  • qq密码找不回来了怎么办(qq密码实在找不回来)
  • qq密码找不回来了怎么办(qq密码实在找不回来)
戴尔和惠普谁的质量好(惠普和戴尔那个性价比高)

dell好,戴尔电脑非常好用,性价比很高,值得入手。首先简要介绍戴尔笔记本。戴尔笔记本电脑是一种商务笔记本电脑,非常适合用于我们的商务工作当中,它的性能十分强大,内部的配置非常优秀,它的操作系统是家庭...

wifi密码如何设置最安全(wifi密码如何设置最安全呢)

1.设置复杂的密码:设置一个由数字、字母和符号组成的复杂密码,这样可以增加破解难度。2.定期更换密码:定期更换WiFi密码是保护网络安全的有效措施。建议每3-6个月更换一次。3.开启WPA2加密...

苹果手机越狱后可以恢复吗

能,操作方法:1.备份你的所有个人数据(非常重要)2.在Cydia中添加源:coolstar.org/publicrepo3.在Cydia中添加源:repo.jailbreakhub.org4.添加完...

gpt分区软件(gpt分区表)

激活工具一:NT6OEMLoader是一款免费的win7激活软件,值得一提的是NT6OEMLoader可以支持UEFI+GPT磁盘激活。这样使用UEFI安装Win7就不用担心没有激活工具可以...

没被用的邮箱号码大全(没用过的邮箱地址大全)

1.打开邮箱登录页,在应输入邮箱账号的地方输入邮箱绑定的手机号,在输入密码的文本框输入用户原先的密码;2.登录到邮箱主页后,在邮箱的左上角,会显示加,星号的邮箱账号这是邮箱为了保护用户隐私而隐藏了一些...

骁龙cpu处理器排行榜(骁龙cpu处理器排行榜2024)

Top1、骁龙888plus(毫无疑问顶级处理器)Top2、骁龙888(2021上半年顶级处理器)Top3、骁龙870(目前各大厂商旗舰机均有搭载的高级处理器)Top4、骁龙865plus(2020下...

取消回复欢迎 发表评论: