OneinStack Nginx+Apache 配合判断是否使用HTTPS访问

发布于 2017-06-21  4.71k 次阅读


前俩天吧WHCMS从6.x升级到了7.x了下。

结果升级后遇到了后台无限重定向的问题,在6.x版本可以分别指定站点地址和和HTTPS版的站点地址,默认会跳转HTTPS,如果被支持。

在6中出现时只需要把HTTPS设置到默认就没什么猫饼,到7就会无限跳转了。。

So,介个phpinfo判断是apache没有判断来源为HTTPS。。修改下前后端配置就好了。

Nginx需要修改:

/usr/local/nginx/conf/proxy.conf

在末尾增加:

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

Apache需要检查/usr/local/apache/conf/httpd.conf,确认其中mod_setenvif没有被注释:

LoadModule setenvif_module modules/mod_setenvif.so

然后加行:

#Add For HTTPS/SSL
# Set HTTPS environment variable if we came in over secure
# channel.
SetEnvIf x-forwarded-proto https HTTPS=on

重启nginx及apache即可解决:

service httpd restart
service nginx restart

眼里有远方,心中有阳光,脚下有力量