You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter 4局域网跨设备访问资源加载失败:net::ERR_CONNECTION_REFUSED

解决CodeIgniter 4局域网跨设备访问资源加载失败问题

问题核心

你硬编码了app.baseURL为http://localhost:96/sun/,导致局域网其他设备访问时,资源路径仍指向仅服务器本地能解析的localhost,进而触发net::ERR_CONNECTION_REFUSED错误。

解决方案

1. 动态自动适配(推荐)

CodeIgniter 4支持自动根据请求生成baseURL,无需硬编码:

  • 打开项目根目录的.env文件(若无则复制.env.example并重命名为.env),修改配置:
app.baseURL = ''
  • 或直接修改app/Config/App.php中的对应配置:
public $baseURL = '';

设置为空后,框架会自动识别当前请求的IP/域名和端口,生成适配的资源路径,本地localhost和局域网IP访问都能正常工作。

2. 固定为服务器局域网IP

如果需要固定baseURL,直接替换为服务器的局域网IP(示例IP为192.168.1.100):

app.baseURL = 'http://192.168.1.100:96/sun/'

这样局域网内所有设备访问时,资源路径都会指向该IP,避免解析错误。

3. 可选:本地域名映射(兼顾本地和局域网)

若想使用友好域名访问,可在服务器和局域网设备的hosts文件中添加映射:

服务器/设备hosts文件添加:192.168.1.100 sun.local
然后修改baseURL为:

app.baseURL = 'http://sun.local:96/sun/'

这样本地和局域网设备都能通过sun.local访问,资源路径也会自动适配。

额外注意事项

  • 确保服务器的96端口未被防火墙拦截,局域网内设备能正常访问该端口。
  • 修改配置后,清除CodeIgniter的配置缓存(删除app/Config目录下的缓存文件),避免旧配置残留。

内容的提问来源于stack exchange,提问作者Yato

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 19:19:59