我正在测试我的网站代码,我的工作目录中有以下文件夹:
- CSS
- js
- 图片
- html(包含 index.html)
当我尝试在本地打开我的网站(html 文件夹中的“index.html”)时,找不到任何 css 或 js 文件(404 错误)。
但是,在我创建一个 html 文件夹之前,所有内容都很好地链接在一起,我的文件设置如下所示:
- CSS
- js
- 图片
- index.html
此外,当我创建一个“html”文件夹并将“index.html”放入其中时,我更改了 html 代码,以便它可以适本地引用其他文件(根据我在各种网站上看到的) :
<link href="../css/my_styles.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../js/touch_functionality.js"></script>
<img src="../img/display_photo.jpg" alt="Display Photo">
附加信息:
我正在使用本地 Apache 服务器访问“index.html”文件,并且我已将我创建的 VirtualHost 的 DocumentRoot 设置到“/html”文件夹。
此外,我认为这可能是权限错误,但我下载了 Cygwin,并对工作目录中的所有文件夹使用了“chmod 711”,并且对“index.html”使用了“chmod 644” html 文件夹中的文件,但仍然找不到文件。
我已经对此进行了数小时的研究,但不幸的是,我还没有找到解决方案。任何帮助将不胜感激,谢谢。
更新
如果我将 DocumentRoot 更改为我所有工作空间目录(而不是 html)所在的位置,并放置一个仅包含以下代码行的 .php 文件:
<?php require("html/index.html"); ?>
我的文件夹所在的位置,所以我的工作目录如下所示:
-CSS
-js
-图片
-html(包含index.html)
-index.php
一切都会正常工作。但是,我不得不相信有一种方法可以让我不必执行这种“变通”方法。任何见解都会非常有帮助,再次感谢。
最佳答案
原因是web服务器只允许查看html目录下的文件。
否则有人会访问您的文件系统的任何部分。
你喜欢吗?
要解决此问题,请回到有效的配置,
关于javascript - 我的 html 文件不会链接到位于父目录中的样式表和 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23589436/