我正在寻找调试思路,不确定发生了什么。没有URI方案的所有直接链接(例如,http://
)在锚中不起作用。假设我正在./includes/
目录中的localhost上工作:
<a href="www.example.com">Example<a>
将您带到127.0.0.1/includes/www.example.com
尽管
<a href="http://www.example.com">Example<a>
将您带到www.example.com
使用其他目录中的文件也会失败:
从<a href="www.example.com">Example<a>
开始时, 127.0.0.1/other/directory/www.example.com
会将您带到127.0.0.1/other/directory
这是一个基本的HTML编码页面。它使用PHP构建,并有多个指向.css
文件和.js
文件的链接。
我已确认:
<base>
标记(netbeans项目搜索)在Chrome调试器中,URI看起来是正确的,但是当我点击链接(例如www.example.com)时,它会将页面信息预先添加到该链接,从而导致其失败。奇怪的是,即使用CTRL-U 查看源,当我点击链接时,它也会带我到同一个不正确的URI!
对于firefox(和firebug)也是如此。
有关导致错误链接的原因的任何想法?
答案 0 :(得分:5)
您的href
属性值不正确:
<a href="www.example.com">Example<a>
你错过了协议。将http://
放在前面:
<a href="http://www.example.com">Example<a>
没有它,浏览器如何知道你没有打算相对于当前文件名为www.example.com
的文件?您必须包含协议。