【已完成】反向代理带IP添加会导致配置文件错误
为了能快速了解并处理您的问题,请提供以下基础信息:面板、插件版本:9.0.0系统版本:Ubuntu 22
问题描述:反向代理项目添加的时候。如果首次已经添加过一次IP+端口的代理之后,再次添加其他的,会报错,反向代理文件夹不存在。第一次例如112.112.112.112:8585 可以正常添加。 第二次添加112.112.112.112:8989 就会报这个错误。 经过定位发现。nginx的配置文件中路径处理对了。但创建文件夹的时候,代码依然是按照没IP的文件夹创建的。 错误代码位置:commod.py if not os.path.exists(get.site_path + "/proxy_cache_dir") 还有一些路径也是对应错误的。 建议 有端口就按IP_端口 如果没有端口 才是IP 现在首次添加 不管有没有端口。他都当没端口显示。第二次添加才显示端口。这个情况可以在代理列表可以看到。 临时解决方案就是 手动创建/www/wwwroot/112.112.112.112_8989 再添加就可以添加上了。
相关截图(日志、错误):
您好,检查/www/server/nginx/conf/nginx.conf配置文件中关于 “proxy_cache_dir” 的设置,看看路径是不是对的
检查一下/www/wwwroot/xxxxx42_8585/proxy_cache_dir这个文件或者目录存不存在 本帖最后由 一只特立独行的猫 于 2024-11-12 16:20 编辑
问题如:第一次添加,127.0.0.1:8080 无论带不带端口 都默认不带端口,系统认为目前是有127.0.0.1这个网站。
第二次添加,127.0.0.2:8181因为判断之前已经有127.0.0.1这个网站了。所以他默认带了端口。
但又因为路径没有兼容去写。导致 反向代理的文件路径不对。代理规则里面路径也不对,创建网站的文件夹路径也不对。就导致了多处报错。
如果手动去改,太麻烦了。起码得改五六处。
堡塔运维南一 发表于 2024-11-12 09:48
您好,检查/www/server/nginx/conf/nginx.conf配置文件中关于 “proxy_cache_dir” 的设置,看看路径是不是 ...
单纯修改一处无法解决多处存在的问题。经过调试代码,已经修复BUG。
修改方案如下:
comMod.py
485行 新增:
if int(get.site_port) != 80:
get.site_name = get.site_name + "_" + str(get.site_port)
get.site_path = get.site_path + "_" + str(get.site_port)
498-503行 修改:
sql = public.M('sites')
if sql.where("name=?", (get.site_name,)).count():
return public.returnResult(status=False, msg='网站【{}】已存在,请勿重复添加!'.format(main_domain))
对于网站查重方面,由于没有去看宝塔的数据库,请检查下 网站查重部分的代码。看是否会有影响。
目前测试没有发现问题。所有路径均正常。
期待有更便捷的方式反馈问题,并有望在闲暇时提供解决方案。 一只特立独行的猫 发表于 2024-11-12 16:05
单纯修改一处无法解决多处存在的问题。经过调试代码,已经修复BUG。
修改方案如下:
近期会在9.0/9.2.0的滚动修复保重修复此问题,感谢你的反馈,感谢使用宝塔面板!
页:
[1]