关于Shinobi:https://shinobi.video/
我有一个忍者是在127.0.0.1。而且域example.com
上的/
是后端,我想example.com/shinobi
主机忍者。
我试着通过nginx做到这一点,这是我的配置:
server {
server_name example.com;
listen 443 ssl;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header X-Forwarded-Host $server_name;
proxy_set_header X-Real-IP $remote_addr;
}
location /shinobi/ {
proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_redirect off;
}
location /socket.io/ {
proxy_pass http://127.0.0.1:8080/socket.io;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade;
proxy_set_header Host $host;
}
}
这对我不起作用,我在reddit上找到了答案:https://www.reddit.com/r/ShinobiCCTV/comments/fgmce0/problem_with_shinobi_behind_nginx_reverse_proxy/
我将/home/Shinobi/conf.json
中的baseURL
更改为https://example.com/shinobi/
并重新启动Shinobi pm2 restart all
。我得到以下响应:
[PM2] Applying action restartProcessId on app [all](ids: [ 0 ])
[PM2] [camera](0) ✓
当我运行https://example.com/shinobi/{TOKEN}/embed/{GROUP}/{CAMERA}/fullscreen%7Cjquery
时,我得到:
Cannot GET /shinobi/{TOKEN}/embed/{GROUP}/{CAMERA}/fullscreen%7Cjquery
这对我不起作用。你能告诉我如何解决这个问题吗?
1条答案
按热度按时间wh6knrhe1#
对于我的位置是/,添加websockets支持忍者太,否则你可能可以登录,但不能看到你的视频:
代理_http_版本1.1;
代理设置报头升级$http升级;
proxy_set_header连接'升级';
代理设置头主机$host;