我的 JavaScript 文件的 HTML 相对路径不起作用



我最近开始从事web开发,并创建了一个简单的网站。我想把一个JavaScript文件(file.js(从一个目录链接到我的网站,但无论我尝试了什么,它都不起作用。

在寻找解决方案时,人们说要使用相对路径(这是我从一开始就尝试使用的(,使用"/文件.js";尝试向上移动一个目录,然后查找该文件。

服务器运行在apache for Debian 11上,我的文件夹结构如下:

var    
|  
www - file.js  
|  
html - index.html

我加载file.js的代码如下:

<script src="../file.js"></script>

在这个问题上有任何帮助都将是非常好的。

我认为问题是您无法定义网站文档根目录上方的相对路径,即html文件夹。根据Web服务器的不同,这可能会被禁止。

理想情况下,您应该在html文件夹中创建一个脚本文件夹,并以这种方式指向它。

/var/www/html/index.html

/var/html/scripts/file.js

PHP解析计算机文件系统上的路径,而web浏览器解析URL上的路径。

浏览器只能读取web服务器将发送给它的数据,并且通过将脚本目录保留在文档根目录之外,它无法通过web服务器使用。

因此,任何.js文件都必须在.html目录中。

客户端浏览器不知道后端网站根目录上方的文件夹结构。有一些方法可以使用权限启用它,但不建议使用,因为它可能会意外造成安全泄漏。

我想";html";是apache服务器的公用文件夹。您需要制作";www";作为公用文件夹。

而不是/file.js建议将绝对路径、服务器地址与公共文件夹中的文件路径保持一致。

如果您在localhost端口80上运行apache;www";作为公用文件夹/根;http://localhost/file.js",在这里,我们不需要输入端口号,因为http默认运行在端口80上。

最新更新