type
status
date
slug
summary
tags
category
icon
password
⛪场景:我在vercel上部署了一个网站,但是vercel分配的域名https://home-page-two-beryl.vercel.app是被墙的,无法访问,正好受伤有一台VPS挂着其他服务,心想就正好用它来顺便代理访问这个网站,已在Cloudflare上加了一个二级域名home.xiaohuadou.top并已解析到了vps上。
一、Nginx安装及配置
1.1 安装Nginx
1、更新系统软件包:
2、安装
Nginx1.2 配置反向代理
1、配置反向代理规则:使用您喜欢的文本编辑器(如
Nano 或 Vim),修改/etc/nginx/nginx.conf配置文件:在打开的文件中,将以下内容复制并粘贴在
http模块中:Nano编辑器中保存并退出文件
Ctrl + O 键来保存文件。您会看到底部显示一个提示,询问您要保存文件的路径和名称。按下 Enter 键确认保存文件。按下 Ctrl + X 键退出 Nano编辑器。2、检查
Nginx 配置是否正确:如果没有错误,继续进行下一步。如果有错误,请检查您的配置文件并修复错误。
3、重新加载
Nginx:4、启动nginx
1.3 更新DNS解析:
登录到您的域名注册商或
DNS 服务提供商的管理界面,将 home.xiaohuadou.top 的 DNS 解析记录更新为指向您 VPS 的公共 IP 地址。请参考您的服务提供商的文档或支持页面,以了解如何进行 DNS 解析记录的修改。1.4 设置防火墙
检查防火墙是否打开
80和443(后面配置SSL证书会用到)端口,如果没打开请开放,然后重启防火墙。ufw防火墙常用命令
iptables常用命令
二、配置SSL证书
我用的是
Ubuntu 系统,以下是在 Ubuntu 上安装和配置 Let's Encrypt SSL 证书的步骤:2.1 安装 Certbot
1、打开终端,使用以下命令添加
Certbot PPA:2、更新软件包列表:
3、安装
Certbot:步骤 2: 申请
SSL证书4、在终端中,运行以下命令申请证书:
其中,
home.xiaohuadou.top 是您要申请证书的域名,安装过程中会要你写个邮箱,后面根据选项选择同意即可,出现以下输出则说明安装成功。
这一步报错❓

这个是因为
nginx插件没有安装,运行以下命令检查 Certbot的 nginx插件是否已安装:如果没有安装,运行以下命令,看到类似
python3-certbot-nginx的输出,则说明安装成功。
如何续签证书❓
Let's Encrypt 颁发的 SSL 证书有时间限制。它们的有效期为 90天,这是为了鼓励网站管理员定期更新和维护证书的安全性。要续签
Let's Encrypt 的 SSL 证书,您可以使用 Certbot 工具自动化该过程。Certbot 可以帮助您自动获取和续签证书,而无需手动干预。您可以按照以下步骤来续签
Let's Encrypt SSL 证书:如果您想手动续签特定域名的证书,可以使用以下命令:
如果续签成功,
Certbot 将自动更新证书文件,并将新的证书文件存储在与之前相同的位置。5、
Certbot 将与 Let's Encrypt 服务器通信,并自动为您的域名生成证书。证书文件将存储在 /etc/letsencrypt/live/home.xiaohuadou.top/ 目录中。2.2 配置Nginx
1、配置
Nginx 使用 SSL 证书2、打开
Nginx 配置文件 /etc/nginx/nginx.conf,在 http配置块中的server中,添加以下 SSL 配置:请确保将
/etc/letsencrypt/live/home.xiaohuadou.top/fullchain.pem 和 /etc/letsencrypt/live/home.xiaohuadou.top/privkey.pem 替换为实际的证书链文件和私钥文件的路径。保存并关闭文件。🔆
PS:如果要代理访问多个网站,多加一个server即可。3、重新加载
Nginx 配置:❗请确保已经在防火墙中打开了
HTTPS(443)端口,以便能够通过 HTTPS 访问。如果有任何防火墙或网络设备,还需要相应地配置以允许 HTTPS 流量通过。