ss-panel-v3-mod_Uim魔改支付宝多域名回调教程

解决 ss-panel-v3-mod_Uim魔改支付宝多域名的问题,让程序读取到我们地址栏输入的域名,这样避免出现之后无法回调导致不到账的问题。

为什么需要多域名回调?

在某些时候,我们会为站点绑定多个域名,举个例子,绑定域名为:1.com ,2.com,3.com,4.com,四个域名都能访问,但是存在一个问题,config.php内指定了一个固定域,假如我们指定的1.com,支付宝支付后,会把信息传到1.com,这没啥问题,同样的方法,其他几个域名由于绑定在一起,回调到1.com,也没问题,但是最大的问题是,当1.com域名被和谐或者到期后,我们需要修改config.php里面的站点地址为其他地址才能正确使用,非常麻烦,所以我们采用php的方法,让程序读取到我们地址栏输入的域名来进行回调,因为,地址能打开,一定是能使用的。

废话不多,看东西:

以下配置均修改.config.php文件。

原版配置:

//基本设置--------------------------------------------------------------------------------------------
$System_Config['debug'] = 'false'; //正式环境请确保为 false
$System_Config['appName'] = '加速器'; //站点名称
$System_Config['baseUrl'] = 'http://1.com'; //站点地址
$System_Config['subUrl'] = $System_Config['baseUrl'].'/link/'; //订阅地址,如需和站点名称相同,请不要修改
$System_Config['appStartTime'] = '2019'; //站点成立时间,显示在页脚 copyright 部分

修改后的配置:

//基本设置--------------------------------------------------------------------------------------------
$System_Config['debug'] = 'false'; //正式环境请确保为 false
$System_Config['appName'] = '加速器'; //站点名称
$http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://';
$System_Config['baseUrl'] =$http_type .$_SERVER[HTTP_HOST]; //站点地址
$System_Config['subUrl'] = $System_Config['baseUrl'].'/link/'; //订阅地址,如需和站点名称相同,请不要修改
$System_Config['appStartTime'] = '2019'; //站点成立时间,显示在页脚 copyright 部分

最主要的一行:

$http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 'http://';

此行判断出用户打开地址栏的http状态是http访问,还是https访问。

$System_Config['baseUrl'] =$http_type .$_SERVER[HTTP_HOST]; //站点地址

此行获取到http状态后,加上用户访问的地址,组成baseUrl信息。

这样配置后,不管我们给用户的地址是什么,当用户访问地址的时候,我们的回调信息自然跟随域名发生改变,避免了回调失败的问题。

 

» 本文链接:ss-panel-v3-mod_Uim魔改支付宝多域名回调教程
» 转载请注明来源:刺客博客
» 如果文章失效或者安装失败,请留言进行反馈。
评论 ( 1)
  1. avatar
    沙发
    阿乐 2019-10-12 09:29

    配置不用改,支付宝那边不设置回调域名就可以了。。。