【问题标题】:Accessing JavaScript file in HTML through parent level directories on an HTTP server通过 HTTP 服务器上的父级目录访问 HTML 中的 JavaScript 文件
【发布时间】:2016-04-12 16:23:23
【问题描述】:

我正在尝试访问 hellotest.js,它位于我的 index2.html 文件的父目录中。
我没有运气这样做,修复应该很简单,我已经尝试寻找答案。
文件的绝对路径是(Ubuntu/Linux):
/home/petrus/dev/testbeds/http-server/index2.html /home/petrus/dev/testbeds/hellotest.js

编辑:我在 http 服务器上运行它:http-serverSimpleHTTPServer

<!DOCTYPE HTML>
<html>
<head>
  <script src="../hellotest.js" type="text/javascript"></script>
  <title>test website</title>
</head>
<body>
  <p>hello world 2</p>
</body>
</html>

【问题讨论】:

  • 别担心我为什么要这样做,一旦我得到这个工作,我将访问一个文件 3 个目录和 4 个目录。
  • 您遇到什么样的错误?您是使用网络服务器还是只是将页面加载到浏览器中?
  • 我正在使用 http-server:npmjs.com/package/http-server 也尝试使用 SimpleHttpServer:docs.python.org/2/library/simplehttpserver.html
  • 也许你不能访问它,因为你的 http-server 的基本目录是/home/petrus/dev/testbeds/http-server,所以出于安全原因,它禁止访问该基本目录之外的任何东西。你得到什么错误?
  • 你说得对,我得到:不允许加载本地资源:file:///home/petrus/dev/testbeds/hellotest.js 现在我把它改成了绝对路径。

标签: javascript html path parent filepath


【解决方案1】:

我最终通过创建符号链接解决了这个问题。
在 Linux/Ubuntu 中,您可以使用:ln -s &lt;symlink_origin&gt; &lt;symlink_destination

【讨论】:

    【解决方案2】:

    不要使用 .. 导航到父目录,只需使用目录名称即可。试试 testbeds/hellotest.js。

    【讨论】:

    • 不走运,试过了,甚至输入了绝对路径。也尝试使用绝对路径,如下所示:file:///home/petrus/dev/testbeds/hellotest.js
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-29
    • 2015-09-23
    • 2015-08-07
    • 2018-01-15
    • 1970-01-01
    • 2017-05-10
    相关资源
    最近更新 更多