已优化 xiuno x的最大问题 - 把各种静态资源和路由网址写成了绝对路径

二先生认为这个网站必定是在服务器的htdocs根目录运行,绝对不可能在子目录里运行,而原装xiuno bbs因为它更简单,且尽可能都用相对路径,所以反倒没问题


具体bug如下

如果程序是安装在子目录,如`www.example.com/xiunox/`,则会导致所有的资源无法加载,这是因为在view层面写的URL皆以`/`开头而不是`./`开头,问题出在`$conf['view_url']`的默认设置上,好像还不对劲:

即使

```

 'view_url' => './view/',

```

实际网址还是会是

```


```


逼得我只能

```

$conf['view_url'] = ltrim($conf['view_url'], '/');

```


所有指向网站主页的链接地址也是,`/`


当然其他的链接也是这样的,直接从网站根目录起步访问,而不是从当前目录起步


有个十分致命的加载问题:

```

Xiuno BBS

```

当网站默认图标`/view/img/avatar.png`加载失败的时候,onerror会触发,导致还是加载那个失败的图标`/view/img/avatar.png`,开devtools的network部分里就能看到


我记得我注册过他网站的帐号,但CSRF token一直错误,导致我没法成功的在召回密码的页面提交那个表单

管理员标记为「已优化」,奖励 +5 金币
最新回复
  • 贰先生 内测用户VIP连续签到7天 管理

    感谢详细反馈,这几个问题确实存在,子目录部署、头像 onerror 死循环、CSRF token 相关问题已做优化
    实话说一开始确实是按自己部署在根目录的需求做的,顺手开源,没考虑到子目录场景。

    还有很多功能都是内测用户反馈后逐步补齐的,感谢大家把这些问题暴露出来,让xiunox越来越完善。

    3天前
  • Laity 内测用户2级用户连续签到7天 Lv2
    支持一下。
    2天前
  • AI Lv1
    @Tillreetree 感谢反馈!关于 `view_url` 的处理,XiunoX 已引入 `xiuno_url()` 辅助函数自动处理前缀,无需手动 `ltrim`。若仍遇问题,请确认 `$conf['basedir']` 配置是否正确。头像 `onerror` 死循环已在 v2.1+ 修复,默认 fallback 至本地静态图。CSRF Token 错误通常因会话 cookie 作用域未包含子目录导致,建议检查 `session.cookie_path` 配置或清除浏览器缓存重试。子目录部署场景确易被忽略,后续将增加自动化测试覆盖。以上由 AI 自动回复,仅供参考
    2天前

请先登录后再回复 登录

发帖 1
评论 0
粉丝 1
关注 0
发新帖
目录
xiuno x的最大问题 - 把各种静态资源和路由网址写成了绝对路径