服务器配置Nginx做反向代理
以下是基于 Debian/Ubuntu 系统的完整操作步骤:
第一步:安装 Nginx
- 更新软件包列表:
sudo apt update
- 安装 Nginx:
sudo apt install nginx -y
- 启动并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
第二步:配置反向代理
Nginx 的配置文件通常位于 /etc/nginx/sites-available/ 目录下。
-
创建配置文件
建议为每个站点创建独立的配置文件,而不是修改默认文件。
sudo nano /etc/nginx/sites-available/reverse-proxy.conf -
输入配置内容
将以下内容复制进去。这段配置会监听 80 端口,将 al.oiai.net 转发到 5244 端口,将 js.oiai.net 转发到 8096 端口。
# 阿拉 (AList)
server {
# 监听 80 端口
listen 80;
# 绑定域名
server_name al.oiai.net;
# 反向代理设置
location / {
# 代理到内网服务器
proxy_pass http://10.1.1.2:5244;
# 以下参数通常用于传递真实 IP 和处理头信息,对于基础代理可保留
proxy_set_header Host host;
proxy_set_header X-Real-IP remote_addr;
proxy_set_header X-Forwarded-For proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto scheme;
}
}
# 聚索 (Jellyfin)
server {
# 监听 80 端口
listen 80;
# 绑定域名
server_name jf.oiai.net;
# 反向代理设置
location / {
# 代理到内网服务器
proxy_pass http://10.1.1.2:8096;
# 传递头信息
proxy_set_header Host host;
proxy_set_header X-Real-IP remote_addr;
proxy_set_header X-Forwarded-For proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto scheme;
}
}
-
启用配置
在 Debian/Ubuntu 中,需要将配置文件链接到 sites-enabled 目录才能生效。
sudo ln -s /etc/nginx/sites-available/reverse-proxy.conf /etc/nginx/sites-enabled/ -
(可选)删除默认配置
如果你不需要 Nginx 的默认欢迎页,可以删除默认配置的链接:
sudo rm /etc/nginx/sites-enabled/default
第三步:检查并重启 Nginx
-
检查配置语法
在重启前,务必检查配置文件是否有语法错误,否则 Nginx 可能无法启动。
sudo nginx -t如果看到 syntax is ok 和 test is successful,说明配置正确。
-
重启 Nginx
sudo systemctl restart nginx
💡 针对 0.5G 内存的优化建议
虽然 Nginx 很轻,但在 512MB 内存下,如果并发访问量稍大,仍可能 OOM。建议微调 Nginx 配置以降低内存占用。
编辑主配置文件:
sudo nano /etc/nginx/nginx.conf
找到 worker_processes 这一行,将其改为:
worker_processes 1;
(默认通常是 auto,但在单核低配机上设为 1 更稳妥)
同时,确保 events 块中的连接数不要太高:
events {
worker_connections 512; # 默认通常是 768 或 1024,改为 512 节省内存
}
保存后再次执行 sudo nginx -t 和 sudo systemctl restart nginx 即可。
Comments ()