PHPWIND[民间论坛]数据搬迁导致丢失严重,用户数据基本全部损坏,十分遗憾来自phpwind.me的远古记忆

求phpwind9的url生成机制

程序喵 离线 3.5K阅读 2回复 于 2014-11-12 22:48 发布在 技术文献 分类
内网有一台主机作为论坛服务器,域名映射到公网ip,公网ip在一台路由器上,访问的时候转发到内网。
 
这样的话我的论坛所有的链接都成了http://172.11.129.11/install.php?a=check这样,
而不是http://bbs.hengtianyun.com/install.php

貌似这个生成url的时候会获取绝对地址,

图片:2.png



找到wind/utility/WindUrlHelper.php文件的createUrl方法,将$absolute参数改成false
118         /**
  119          * 构造并返回Url地址
  120          *
  121          * 将根据是否开启url重写来分别构造相对应的url
  122          * @param string $action 执行的操作
  123          * @param array $args 附带的参数
  124          * @param string $anchor url锚点
  125          * @param AbstractWindRoute $route
  126          * @param boolean $absolute 是否返回绝对地址
  127          * @return string 返回url地址
  128          */
  129         public static function createUrl($action, $args = array(), $anchor = '', $route = null, $absolute = true) {
  130                 /* @var $router AbstractWindRouter */
  131                 $router = Wind::getComponent('router');
  132                 $url = $router->assemble($action, $args, $route);
  133                 $url .= $anchor ? '#' . $anchor : '';
  134                 return self::checkUrl($url, $absolute);
  135         }

129         public static function createUrl($action, $args = array(), $anchor = '', $route = null, $absolute = false)

安装界面的接受按钮的地址会变正常。

图片:1.jpg



但是打开debug会看见所有的js、css都引用了绝对地址(暴露IP)。

图片:3.jpg

图片:4.jpg




打开后台查看所有的链接也都是引用的IP而不是域名。后台的域名配置和windid都是IP不是域名。

图片:5.jpg



这个问题该怎么解决啊求大神 @admin

标签

评论

2 最热 最新
游客
程序喵
程序喵
楼主
11年前 浙江省杭州市
0
kkty
kkty
11年前 河南省焦作市
0
高深啊
s_footer