Discuz! X 源站和反向代理站使用不同域名的情况下需要解决的问题
分类 网站技术/村民张先生 发布于 2020-01-31 02:24
1、管理中心无法提交的问题(提示“请求来路不正确”)。
打开 source/class/helper/helper_form.php 文件,查找:
strncmp($_SERVER['HTTP_REFERER'], 'http://wsq.discuz.com/', 22) === 0
在其后方加入:
|| preg_match('/^http(s)?:\/\/('.implode("|", $proxydomain).')(\/|$)/i', $_SERVER['HTTP_REFERER'])
其中的 $proxydomain 在此代码前方定义:
$proxydomain = array('代理域名1', '代理域名2');
2、验证码无法显示的问题。
打开 source/module/misc/misc_seccode.php 文件,查找:
($refererhost['host'] != $_SERVER['HTTP_HOST'])
替换为:
$refererhost['host'] != $_SERVER['HTTP_HOST'] && !in_array($refererhost['host'], $proxydomain)
其中的 $proxydomain 参考第一步定义。建议将 $proxydomain 设置为一个全局变量,方便统一修改和调用。
3、其他。待发现补充。
欢迎谈谈你的看法(无须登录) *正文中请勿包含"http://"否则将被拦截