nginx+ubuntu图床搭建
书接上篇, 搭好一台可以域名访问的本地服务器
后, 现在可以解决MD文件图床问题
- 本地维护图床, 移动或丢失后均需要修改文档, 随着文档越来越多, 这是个头疼的事
- 这样使用域名访问图床, 可以有效避免
url
变更, 更换服务器后, 仅需移动图片即可
环境
- ubuntu22.04虚拟机
- nginx: 开源 Web 服务器和反向代理服务器
nginx-反向代理服务
一个开源的 Web 服务器和反向代理服务器, 具有高性能, 可扩展性和可靠性, 可以处理大量并发连接, 也可以缓存HTTP请求以提高性能
原理
- 将HTTP请求转发到服务器
- 将相应返回给客户
功能
- 支持缓存: 缓存http请求提高性能, 可以使用
Etag
if-none-match
等命令请求缓存 - SSL终止: 可以终止HTTPS请求转化为HTTP请求, 以便可以将其传递给Web服务器
- 负载均衡: 通过轮询, 加权轮询, 最小连接数等方法对传入的请求进行负载均衡
- 反向代理: 充当服务器和客户端间的代理, 将请求转发到服务器, 并将相应返回客户端
- 路由: 根据URL将请求转发到不同的服务器
安装
# 1、安装
# 安装过程如果缺少依赖, 跳转连接查看详细安装步骤
# https://nginx.org/en/linux_packages.html#Ubuntu
sudo apt update
sudo apt install nginx
# 2、验证nginx是否安装成功
sudo nginx -v
启动&查看状态
#切换到nginx的安装目录
cd /usr/local/nginx/sbin
#启动nginx
./nginx
# 查看程序状态
systemctl status nginx
- 软件的主要路径功能介绍
/usr/sbin/nginx
- 主程序/etc/nginx
- 存放配置文件/usr/share/nginx
- 存放静态文件/var/log/nginx
- 存放日志
关闭
nginx -s stop
ps -ef | grep nginx # 查看Nginx的进程
kill xxx # 杀死Nginx相关进程
访问
可以看到下图左上角小锁标志有×
表示当前没有安全访问的证书
证书添加方式见我下篇文档
配置
-
打开软件配置文件的路径
/etc/nginx/nginx.conf
, 找到server
组, 如果没有, 自己添加此处配置虽可使用, 但略有不当, 可能造成访问偶尔断联
此处配置虽可使用, 但略有不当, 可能造成访问偶尔断联
此处配置虽可使用, 但略有不当, 可能造成访问偶尔断联
正确访问见问文章, 见:
手动cerbot安全访问nginx+ubuntu
中的Nginx配置SSL
http {
.....
server {
listen 80; # 监听端口
server_name img.eksnotebook.com; # 域名
# root /path/to/your/website; # 展示静态网页
# 使用别名代替真是路径
location /images {
alias /images; # 访问图片的路径
autoindex on; # 展示列表
}
# # 暂时没搞明白, 后续再说
# location /static {
# alias /static/files; # 静态页面的目录路径
# autoindex on; # 展示列表
# }
# # 暂时搞明白, 后续再说
# location / {
# # 使用try_files指令来尝试查找匹配的URI
# # 找不到返回index.html, 可以是默认, 也可以是自定义
# try_files $uri $uri/ /index.html;
# }
}
}systemctl restart nginx
- 重启服务
访问
-
img.eksnotebook.com/images/
-
img.eksnotebook.com/static/files
-
img.eksnotebook.com/
常用命令
systemctl restart nginx # 重启服务
nginx -s reload #
nginx -h # 帮助
nginx -v # 版本号
nginx -t # 会显示任何错误或警告信息
nginx -m # 可以加载缓存, SSL终止, 负载均衡...