src属性仅适用于相对路径

Tim*_*len 1 html path relative-path absolute-path src

我在我的网页上添加了一个javascript文件,如下所示:

<script type="text/javascript" src="../../js/filename.js"></script>
Run Code Online (Sandbox Code Playgroud)

这很好用.但是,然后我尝试将相对路径更改为绝对路径,如下所示:

<script type="text/javascript" 
        src="/home/name/domains/domain.com/public_html/js/filename.js"></script>
Run Code Online (Sandbox Code Playgroud)

这会导致此服务器以404 (Not Found)状态响应.

我很确定这是这个文件的正确绝对路径,因为使用require_once()非常相似的绝对路径导入某个php文件可以正常工作.实际上,PHP函数realpath("../../js/filename.js")产生了"/home/name/domains/domain.com/public_html/js/filename.js".

我究竟做错了什么?

cod*_*e44 5

关键点是<script>标签是客户端解释而php包是解释服务器端.

服务器端,路径将相对于您的文件系统(绝对或相对于当前目录)

客户端(=浏览器端),路径将相对于当前页面的url.

如果您当前的页面是: http://domain:port/page.php,则您的浏览器正在尝试加载http://domain:port/home/name/domains/domain.com/public_html/js/filename.js 服务器无法找到的页面.

服务器的"根"目录似乎是/home/name/domains/domain.com/public_html.

因此,对于您的JS文件,来自客户端视图的"绝对路径"将是:

<script type="text/javascript" src="/js/filename.js"></script>