我可以使用以下配置访问 Synology DSM,不会出现任何问题(这不是 Synology NGINX!):
server {
listen 443 ssl http2;
server_name dsm.mydomain.de;
ssl_certificate
/etc/nginx/ssl/live/dsm.mydomain.de/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/live/dsm.mydomain.de/privkey.pem;
location / {
return 301 https://dsm.mydomain.de/dsm;
}
location /dsm/ {
client_max_body_size 0;
proxy_pass http://192.168.0.92:5000/;
proxy_redirect off;
proxy_http_version 1.1;
proxy_buffering on;
proxy_read_timeout 120;
proxy_max_temp_file_size 0m;
proxy_set_header Host $http_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;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-NginX-Proxy true;
proxy_set_header Connection "";
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
}
当我通过 Synology FileStation 共享文件时,我会收到一个共享链接,看起来像
https://dsm.mydomain.de/sharing/a4fJsmUYK
所以我认为将位置/共享/添加到服务器块就可以完成这项工作。 但是当访问共享网址时,它永远显示“正在加载...”。
(我可以使用
http://192.168.0.92:5000/sharing/a4fJsmUYK
访问共享文件)
有人知道解决办法吗?
我遇到了同样的问题,并通过更改域绕过了它。 当您在本地访问 Synology Drive 时,您会转到 http(s)://localip:port。但当你分享它时,它是http(s)://localip/stringchart。 假设您的drive的反向代理是drive.domain.com,DSM的反向代理是dsm.domain.com,您的共享链接将为http(s)://drive.domain.com/stringchart,并且它无法工作:您将尝试访问不存在的http(s)://localip:port/stringchart。 我刚刚将网址从 http(s)://drive.domain.com/stringchart 更改为 http(s)://dsm.domain.com/stringchart 并且它有效。 这不是一个真正的解决方案,但它确实有效。