在 Nginx 后端工作时无法连接到 Aria2 RPC
作者: johnnysong-cc创建于 2023年10月30日更新于 2024年3月17日
运行环境 Aria2 RPC 服务器在 192.168.1.99:6800 上运行 AriaNg 客户端在 192.168.1.254:6880 上运行,它们一起运行正常。 但是,当我尝试将 AriaNg 置于 Nginx 反向代理后,并使用以下配置时:
stream {
map $ssl_preread_server_name $backend_name {
aria.mydomain.com aria;
}
upstream aria{
server 127.0.0.1:26880;
}
}
http {
server {
listen 26880 ssl;
server_name aria.mydomain.com;
ssl_certificate fullchain.cer;
ssl_certificate_key aria.mydomain.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
# ssl_verify_client off;
# ssl_handshake_timeout 30s;
location / {
proxy_pass http://192.168.1.254:6880/;
proxy_set_header Host $host;
proxy_set_header Origin 192.168.1.254;
proxy_set_header Referer 192.168.1.254;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
}症状 通过浏览器访问 "https://aria.mydomain.com",AriaNg 客户端仍可访问,但无法再通过 192.168.1.99:6800 连接到 RPC 服务器。
以下是超出我的能力范围的问题
- 在 RPC 服务器设置中,"http" 和 "websocket" 不能使用,选项仅限于 "https" 和 "wss"。然而,我尝试使用由 LetsEncrypt 发布的 "aria.mydomain.com" 证书与 Aria2 RPC 服务器,但它不接受这些证书。
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
rpc-certificate=D:\aria2-1.36.0\fullchain.cer
rpc-private-key=D:\aria2-1.36.0\aria.mydomain.com.key
rpc-secure=true- Chrome 开发者工具的"网络"选项卡中有许多 jsonrpc 错误。我尝试使用
proxy_set_header来更改 Origin 和 Referer 头,如配置中所示,但它们仍保持不变,仍为 "https://aria.mydomain.com"。
内容来源: mayswind/AriaNg