首先购买一台云服务器(推荐腾讯云轻量应用服务器或阿里云ECS),操作系统选择 Ubuntu 20.04 或 22.04 LTS。购买完成后,记录下服务器的公网 IP 地址和 root 密码。打开本地终端(Windows 用户推荐使用 PowerShell,Mac 用户使用 Terminal),输入以下命令连接服务器:
```bash ssh root@你的公网IP地址 ```输入密码时屏幕不会显示任何字符,这是正常的,输入完成后直接回车即可登录。登录后,首先更新系统软件包列表,确保后续安装的是最新稳定版:
```bash apt update -y && apt upgrade -y ```接着配置防火墙,只开放必要的端口。Ubuntu 默认使用 UFW 防火墙,执行以下命令允许 SSH 和 HTTP/HTTPS 流量:
```bash ufw allow OpenSSH ufw allow 'Nginx Full' ufw enable ```输入 y 确认启用防火墙。此时输入 ufw status 可以查看防火墙状态,确保 Nginx Full 已被允许。
Nginx 是高性能的 Web 服务器。使用 apt 包管理器直接安装:
```bash apt install nginx -y ```安装完成后,Nginx 服务会自动启动。使用 systemctl 命令验证其运行状态:
```bash systemctl status nginx ```如果输出中显示 active (running),说明安装成功。此时在浏览器中访问服务器的公网 IP,应该能看到 Nginx 的默认欢迎页。
为了规范管理,不建议使用默认目录。我们在 /var/www 下创建一个新目录用于存放网站文件:
```bash mkdir -p /var/www/mywebsite ```为了防止权限问题,将目录的所有权赋予当前登录的用户(本指南以 root 为例,生产环境建议创建专门的用户):
```bash chown -R $USER:$USER /var/www/mywebsite ```设置目录权限,确保 Nginx 进程可以读取文件:
```bash chmod -R 755 /var/www/mywebsite ```进入该目录并创建一个 index.html 文件作为网站首页:
```bash nano /var/www/mywebsite/index.html ```在打开的编辑器中,粘贴以下 HTML 代码:
```html如果你能看到这句话,说明服务器环境配置无误。
按 Ctrl + X,然后按 Y,最后按 Enter 键保存并退出编辑器。

接下来需要告诉 Nginx 如何处理对 /var/www/mywebsite 的请求。在 Nginx 配置目录下创建一个新的配置文件:
```bash nano /etc/nginx/sites-available/mywebsite ```输入以下完整的配置内容。这段代码配置了监听 80 端口,并指定了网站根目录。其中 try_files 指令用于处理 URL 路由,如果文件不存在则返回 404:
```nginx server { listen 80; listen [::]:80; root /var/www/mywebsite; index index.html; server_name 你的域名.com www.你的域名.com; location / { try_files $uri $uri/ =404; } } ```注意将 server_name 替换为你实际购买的域名。如果暂时没有域名,可以先填写服务器的公网 IP,或者填写下划线 _ 作为通配符。
保存退出后,通过创建软链接将此配置文件启用到 sites-enabled 目录:
```bash ln -s /etc/nginx/sites-available/mywebsite /etc/nginx/sites-enabled/ ```为了避免 Nginx 默认配置文件的冲突,建议删除默认配置:
```bash rm /etc/nginx/sites-enabled/default ```执行以下命令测试 Nginx 配置文件的语法是否正确:
```bash nginx -t ```如果输出显示 syntax is ok 和 test is successful,则重载 Nginx 使配置生效:
```bash systemctl reload nginx ```登录你的域名注册商控制台(如阿里云、腾讯云或Namecheap)。找到“域名解析”或“DNS Management”页面。点击“添加记录”或“Add Record”,填写以下信息:
保存后,等待 5-10 分钟让 DNS 生效。可以使用 ping 你的域名.com 命令查看是否解析到了服务器 IP。解析生效后,在浏览器输入你的域名,应该能看到自定义的 HTML 页面。
为了保证数据传输安全,必须启用 HTTPS。使用 Certbot 自动申请 Let's Encrypt 免费证书。首先安装 Certbot 及其 Nginx 插件:
```bash apt install certbot python3-certbot-nginx -y ```执行以下命令自动获取证书并修改 Nginx 配置。请确保域名已正确解析到该服务器,否则验证会失败:
```bash certbot --nginx -d 你的域名.com -d www.你的域名.com ```执行过程会提示输入邮箱(用于续期提醒),输入邮箱后回车。接着按提示同意服务条款(输入 A 回车)。询问是否分享邮箱给 EFF 时,可以选择 N。Certbot 会自动检测 Nginx 配置文件,并询问是否将 HTTP 流量重定向到 HTTPS。选择 2(Redirect),回车确认。
配置完成后,刷新浏览器,地址栏会显示小锁头图标,表示 HTTPS 已成功开启。此时 Nginx 配置文件已被 Certbot 自动修改,添加了 SSL 监听和证书路径配置。
Let's Encrypt 证书有效期只有 90 天,必须设置自动续期。Certbot 安装时通常已经自动添加了 systemd timer 或 cron 任务。我们可以通过以下命令模拟续期,测试自动任务是否配置正确:
```bash certbot renew --dry-run ```如果输出提示 "simulating renewal" 且最后显示 "no renewals were attempted" 或 "dry run successful",说明自动续期机制运行正常,无需人工干预,网站将长期保持在线状态。
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图