我已经为Ajenti
设置了一个服务器块 – > http://support.ajenti.org/topic/349870-ajenti-behind-nginx/
location /ajenti { rewrite (/ajenti)$ / break; rewrite /ajenti/(.*) /$1 break; proxy_pass http://127.0.0.1:8000; proxy_redirect / /ajenti/; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; }
哪个让我login,但是在我login后, Ajenti
redirect到“/ ajenti:auth”,而不是“/ ajenti / ajenti:auth”。
例如:浏览器 – > HTTPS – > Nginx – > HTTP – > Ajenti
这也似乎是“静态”资源的一个问题。
请参阅: http : //support.ajenti.org/topic/88086-support-ajenti-behind-a-reverse-proxy/
在Nginx
处理这个问题的build议方法是什么?
编辑:添加proxy_set_header Origin http://$host;
为我修复它。
升级到最新版本的ajenti后,我也有这个问题。 错误403无效的来源。 这是我的设置。
server { listen 443 ssl; server_name ajenti.mymagicalwebsite.com; ssl on; if ($scheme = http) { return 301 https://$server_name$request_uri; } location / { proxy_pass http://localhost:8000; proxy_redirect off; 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_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 36000s; ## Timeout after 10 hours } }
有趣的是,这一切都工作在一个版本之前,完全相同的设置。
以下是我将如何做到这一点:
使用location ~ /ajenti.*
来匹配Ajenti的资源URL。
编辑 :测试,它的作品。