标签归档:宝塔面板

宝塔面板子目录绑定伪静态无效原因及修复方案

环境描述:
面板版本:Linux 免费版 7.4.2 (至7.4.3版依然存在)
系统版本:CentOS 8.1.1911(Py3.7.8)
浏览器版本:Chrome 84.0.4147.105 64 位

问题描述:
子目录绑定伪静态无效,原因:网站管理中,子目录绑定设置伪静态文件引用地址错误。

复现步骤:
1、添加网站域名:test.com;
2、子目录绑定:域名bbs.test.com,目录:bbs;
3、查看配置文件:网站子目录绑定的伪静态引用地址为网站主目录伪静态文件(/www/server/panel/vhost/rewrite/test.com.conf),而不是子目录伪静态文件(/www/server/panel/vhost/rewrite/test.com_bbs.conf)。

手动修复:
修改配置文件,在子目录配置中修改引用文件地址加上(_目录名)即可。

源码修复(仅限于此版本面板):
修改文件:/www/server/panel/class/panelSite.py:2223

BINDING-%s-END”’ % (domain,port,listen_ipv6,domain,webdir,version,self.setupPath,siteInfo[‘name’],public.GetConfigValue(‘logs_path’)+’/’+siteInfo[‘name’],public.GetConfigValue(‘logs_path’)+’/’+siteInfo[‘name’],domain)

为:

BINDING-%s-END”’ % (domain,port,listen_ipv6,domain,webdir,version,self.setupPath,siteInfo[‘name’]+’_’+dirName,public.GetConfigValue(‘logs_path’)+’/’+siteInfo[‘name’],public.GetConfigValue(‘logs_path’)+’/’+siteInfo[‘name’],domain)

重启面板。