我已经设置了一个用于 plesk 的子域名,这样我就不必一直输入端口。
这是我的HTTP
配置:
SSLProxyEngine Off
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule $ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
这是我的HTTPS
配置:
SSLProxyEngine On
AllowEncodedSlashes On
<Location />
ProxyPass https://localhost:8443/
ProxyPassReverse https://localhost:8443/
</Location>
这是我的nginx
配置(没有做任何我需要的事情,只是尝试了一下):
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 https;
它显示 IP 为 127.0.0.1,在使用 ProxyPass 时,我怎样才能显示我的真实 IP?
答案1
看来您只需要修改一个 fastcgi 参数,而且由于 plesk 运行它自己的实例,它不会干扰任何其他服务。
添加以下行到/etc/sw-cp-server/fastcgi_params
:
fastcgi_param REMOTE_ADDR $http_x_real_ip;
或者只需使用适当的权限运行此命令:
echo 'fastcgi_param REMOTE_ADDR $http_x_real_ip;' > /etc/sw-cp-server/fastcgi_params
然后重启服务:
/etc/init.d/sw-cp-server restart