HTML src无法正确访问所需的文件路径

时间:2018-01-11 06:07:40

标签: javascript php html

我已经包含了一个文件夹,我保存文件,我不希望人们轻易查看,比如php连接文件中的密码。此文件夹名为“inc”,与“public_html”文件夹位于同一级别。我已将带有数据库连接详细信息的php文件放在'inc'文件夹中,并使用'../inc/'和文件名访问它,它完美地工作 - 即:

require_once('../inc/connection.php');

我还想将javascript文件放在'inc'目录中,并通过HTML中的src路径访问它们。我尝试了与php文件相同的方法 - 使用'../inc/'和文件名来访问文件,由于某种原因它不起作用:

<script src="../inc/moment.js"></script>

我在Stack Overflow上读过类似的查询,并遵循正确的方法(本地和服务器上),但无论出于何种原因,它都没有访问js文件。但是,如果我将'inc'文件夹重定位到'public_html'文件夹中(仅适用于js文件),它确实有效,但这违背了我想要实现的目的 - 在我看来应该不起作用。

php是否会使用“../”来处理与HTML src不同的目录的访问权限。我认为不应该,但我不能让它发挥作用。

任何帮助都非常感谢!

1 个答案:

答案 0 :(得分:0)

带有source属性的脚本标记是html,告诉浏览器获取文件。公众可以使用相对路径,但您的js文件需要公开访问;它们根本不能隐藏在公共根之外。

PHP是在服务器上运行的脚本语言。当它在适当的上下文中看到../时,例如你提到的require_once指令,它会将它转换为你正在寻找的目录的正确路径,因此它可以看到公共目录之外。

不要将敏感项放在js中,将它们放在服务器上的受保护文件中。如果您在运行时需要信息,请进行ajax调用以访问并使用数据为客户端提供所需的信息。