工控编程吧

标题: DISCUZ插件绑定指定域名如二级域名方法 [打印本页]

作者: qq263946146    时间: 2019-2-18 00:17
标题: DISCUZ插件绑定指定域名如二级域名方法
这里记录自己如何绑定二级域名的。

想实现插件 xxx.com/plugin.php?id=threed_pay 绑定到e.xxx.com.
也说是e.xxx.com可以直接访问插件。

实现步骤如下:
1.在域名商和空间商进行e.xxx.com解析。
具体操作百度很多介绍!!
绑定成功效果是:通过e.xxx.com可以跳转到xxx.com;

2.修改DISCUZ两文件:修改方法参考网络的兄弟2014看发布的帖子。
我当前DISCUZ版本为DZ3.4,修改前做好两文件备份,不时之需!
具体修改如下:

1)网站根目录index.php下载,打开,CTRL+F查找代码:
$_ENV['defaultapp'] = array('portal.php' => 'portal', 'forum.php' => 'forum', 'group.php' => 'group', 'home.php' => 'home');
改为:
$_ENV['defaultapp'] = array('portal.php' => 'portal', 'forum.php' => 'forum', 'group.php' => 'group', 'home.php' => 'home', 'plugin.php' => 'plugin');

再查找代码:
if(!empty($_ENV['domain']['app']) && is_array($_ENV['domain']['app'])&& in_array($_SERVER['HTTP_HOST'], $_ENV['domain']['app'])) {
改为:
if(!empty($_ENV['domain']['app']) && is_array($_ENV['domain']['app'])) {

最后查找代码:
$_ENV['curapp'] = array_search($_SERVER['HTTP_HOST'], $_ENV['domain']['app']);
修改为:
if($_SERVER['HTTP_HOST']=='e.xxx.com'){//自己插件要绑定的域名
           $_ENV['curapp']='plugin';
           }


2)网站根目录plugin.php.php下载,打开,CTRL+F查找代码:
if(!empty($_GET['id'])) {
        list($identifier, $module) = explode(':', $_GET['id']);
        $module = $module !== NULL ? $module : $identifier;
} else {
        showmessage('plugin_nonexistence');
}

修改为:
if(!empty($_GET['id'])) {
        list($identifier, $module) = explode(':', $_GET['id']);
        $module = $module !== NULL ? $module : $identifier;
} else {
if($_SERVER['HTTP_HOST']=='e.gkbc8.com'){//自己域名
      $_GET['id']='it618_video';//插件后戳名
      list($identifier, $module) = explode(':', $_GET['id']);
      $module = $module !== NULL ? $module : $identifier;
          }
          else {
        showmessage('plugin_nonexistence');}
}

上传修改后的两文件,清空浏览器缓存。
或用另一浏览器测试效果;

其实本人也非此专业。花钱能解决的事,基本靠买:
下面是买的<插件绑定二级域名>插件,用在了DZ3.4上面;
同样使用前保证e.xxx.com可以跳转到xxx.com;
e.xxx.com在论坛中未被重复设置过。(如可能门户设置了e.xxx.com,插件再设置则无效)

(, 下载次数: 0)