搭建个人博客踩坑总结:从域名到上线
一直想有一个自己的博客,趁着周末折腾了一下。从买域名到网页能正常访问,中间踩了不少坑,记录下来供自己备忘,也希望能帮到同样在折腾的朋友。
一、域名注册
域名注册本身很简单,选一个自己喜欢的名字,在域名注册商那里下单就行。几个注意点:
- 实名认证:国内注册的域名必须完成实名认证才能解析,一般需要提交身份证照片,审核通常 1-3 个工作日。
- Whois 隐私保护:建议开启,避免个人信息被公开查询到。
- DNS 解析:注册完成后先去 DNS 管理后台添加一条 A 记录,指向服务器 IP。TTL 可以先设 600 秒,方便调试。
二、备案流程
如果服务器在国内,域名必须备案。流程大致是:
- 在服务器提供商(如腾讯云、阿里云)的备案系统中提交申请
- 填写网站名称、网站描述(要和实际内容一致)
- 上传身份证、人脸核验
- 提交后等待管局审核,各省时间不同,一般 7-20 个工作日
- 备案通过后会收到短信和邮件通知,备案号需要放在网站底部
备案期间网站不能访问(未备案域名会被拦截),所以要提前规划时间。
三、服务器环境搭建
我用的是最低配的云服务器(1 核 1G),安装了 Ubuntu 系统。Web 服务器选了 Nginx,因为配置简单、性能好。安装步骤:
sudo apt update
sudo apt install nginx -y
sudo systemctl enable nginx
sudo systemctl start nginx
安装完成后在浏览器输入服务器 IP,看到 Nginx 欢迎页就说明成功了。
四、Nginx 站点配置
在 /etc/nginx/sites-available/ 下创建一个配置文件:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/blog;
index index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
}
然后创建软链接到 sites-enabled,执行 nginx -t 测试配置,最后 nginx -s reload 重载。
五、HTTPS 证书
用 Let's Encrypt 的免费证书,配合 Certbot 工具一键搞定:
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d example.com -d www.example.com
Certbot 会自动修改 Nginx 配置、添加 SSL 证书并设置自动续期。证书有效期 90 天,自动续期不需要手动操作。
六、遇到的坑
- DNS 解析没生效:改完 DNS 后要等一段时间才能生效(取决于 TTL),可以用
nslookup或dig命令检查。 - 防火墙拦截 80 端口:云服务器的安全组默认可能没开放 80 和 443 端口,需要去控制台添加规则。
- 备案号位置:备案通过后一定要及时把备案号加到网站底部并链接到工信部,否则可能被注销。
折腾了两天终于搞定。虽然中间踩了不少坑,但看到自己的域名能正常访问的那一刻,还是挺有成就感的。