51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Hexo -33- 私有服务器通过 nginx 建立图床

经过各种图床折腾之后,发现可以在自己的服务器中直接建立 nginx 站点作为专门的图床使用,本文记录相关内容。

背景 {#背景}

  • 在折腾 chevereto 自建图床的过程中,发现核心功能可以剥离出来直接用 nginx 维护实现

宝塔方法 {#宝塔方法}

宝塔 {#宝塔}

  • 在宝塔面板配置需要安装宝塔面板,并配置 Nginx 环境
  • 建立站点

Nginx 服务器 {#Nginx-服务器}

  • 直接配置 Nginx 文件
  • 重启 nginx

读取图床数据 {#读取图床数据}

  • 在网站根目录存放的数据已经可以直接访问了,链接规则
  • 在站点根目录存入图像 1.png

  • 直接访问 web-url / 1.png即可直接看到图像内容

  • 软链接文件也是可以读取的

Nginx Docker 方式 {#Nginx-Docker-方式}

准备 Nginx 容器 {#准备-Nginx-容器}

安装好 Docker 后执行命令

创建 nginx 初始容器

为了容器可以方便、安全地维护,将容器中 /etc/nginx 内容拷贝到宿主机,我放到了 /share/nginx_conf 文件夹

关闭容器(由于 --rm 会自动删除)

重新创建容器:

  • -p: 端口映射,建议多映射几个端口,后期添加很麻烦
  • -d: 后台运行
  • -v: 磁盘映射

此时在 /share/html 中创建 index.html 文件,写入内容:

访问本机IP 的 8080 端口,可以看到 Hello World 字样

说明目前为止一切顺利,Nginx 正常运行

那么此时理论上就可以当成图床用了,将一张图像放到 /share/html/ImageHost 下,起名字 test.jpg

访问地址:

理论上的图床就搭好了,这里依赖的是 Nginx 容器中默认的服务器配置 /etc/nginx/conf.d/default.conf 文件,也就是我们当前宿主机中 /share/nginx_conf/conf.d 文件:

当前仅能通过访问 nginx 容器的 80 端口通过 http 协议获取图像,如果需要 https 访问需要准备证书,放到 /share/ssl 文件夹中:

并在 /share/nginx_conf/conf.d 文件夹下添加配置文件 iamgehost_ssl.conf:

配置好后重启 ngxin 容器,访问 https://uipv4.zywvvd.com:33030/test.jpg

https 图床配置完成!

抛弃了宝塔面板,更加自主可控。

参考资料 {#参考资料}



文章链接:
https://www.zywvvd.com/notes/hexo/website/33-nginx-imgbed/nginx-imgbed/

赞(0)
未经允许不得转载:工具盒子 » Hexo -33- 私有服务器通过 nginx 建立图床