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

CodeIgniter中外链跳转异常:本地正常线上跳转至mysite.com/www.google.com

问题原因与解决方案

哦,这个坑我之前踩过!问题出在你的Login链接是相对路径,而非完整的绝对路径。

为什么会跳转到mysite.com/www.google.com?

当你写href="www.google.com"时,浏览器会默认把它当成当前网站域名下的子路径,自动拼接成「当前域名 + 你写的路径」——也就是你的线上域名mysite.com加上www.google.com,最终变成mysite.com/www.google.com。不管用不用CodeIgniter,浏览器处理相对/绝对路径的逻辑都是一致的。

怎么解决?

把外部链接改成带协议的完整绝对路径,也就是加上https://(推荐用HTTPS,更安全):

<ul> 
  <li> 
    <a href="https://www.google.com" class="drop-text">Login</a> 
  </li> 
  <li> 
    <a href="#contact" class="drop-text">Contact Us</a> 
  </li> 
</ul>

补充:为什么本地看似正常?

大概率是你本地测试时直接打开了HTML文件(用file://协议),浏览器对这种本地文件的相对路径处理逻辑和服务器环境(http/https)不一样,所以没触发这个问题,但上线到服务器后就暴露了。

另外如果是站内链接,CodeIgniter提供了site_url()或base_url()函数来生成正确的站内绝对路径,但外部链接必须手动加上完整的协议和域名哦~

内容的提问来源于stack exchange,提问作者Suluh Damar Grahita

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 07:57:39