【博客搭建】将博客与图床从自建 Nginx 迁移到宝塔面板的Nginx
虽然自建 Nginx 纯净高效,但为了追求可视化管理和企业级安全特性,我决定将 Web 服务迁移到 宝塔面板 Nginx!
迁移前备份
宝塔面板的 Nginx 和 Ubantu 系统 apt 安装的 Nginx 会引起冲突,因此需要先卸载系统上安装的 Nginx 。首先将所有旧的 Nginx 配置文件(/etc/nginx)打包,确保数据无失:
1 | # 停止旧服务并创建备份文件 |
卸载系统 Nginx
使用 purge 确保移除所有旧 Nginx 文件和配置,为宝塔环境腾出干净空间:
1 | sudo apt purge nginx nginx-common -y |
部署宝塔 Nginx 与站点创建
登录宝塔面板,安装 LNMP 环境,然后创建两个站点。
由于需要维持 Cloudflare Tunnel 的自定义端口,需要在宝塔的 “添加站点” 时使用 “另加端口格式”:
| 站点 | 宝塔项目类型 | 域名填写 | 根目录 |
|---|---|---|---|
| 博客主站 | HTML 项目 | tianlejin.top:50001 www.tianlejin.top:50001 |
/home/tianlejin/myblog/txm_blog/public |
| 图床站点 | HTML 项目 | img.tianlejin.top:50000 |
/home/tianlejin/myblog/blog-imgs |
配置文件的优化与安全加固
宝塔自动生成的 Nginx 配置虽然全面,但需要根据我的需求进行定制化。(参考原先的配置文件:~/nginx_conf/sites-available)
1. 博客主站:补充 Hexo 伪静态规则
由于 Hexo 使用伪静态链接(无 .html 后缀),宝塔默认配置无法识别。需要在 “伪静态” 区域补充核心逻辑:
1 | # 粘贴到 www.tianlejin.top 站点的“伪静态” |
2. 图床站点:关闭目录浏览并利用宝塔优化
图床服务无需复杂的 try_files,只需利用宝塔内置的 安全防护 和 缓存优化。唯一需要手动加固的是禁止目录浏览。
将以下配置添加到 img.tianlejin.top 站点的 “伪静态” 区域:
1 | # 确保图床目录结构不会暴露给访客 |
评论
