我跟随this tutorial创建了一个安全的登录系统。我的文件夹逻辑如下:
/var/www/html/mysite/ # html folder is public (here goes index.php, etc)
/var/www/includes/ # includes is hidden (login details, etc)
/var/www/js/ # js is also hidden, as stated on the tutorial
当我说"正如教程"所述,我指的是这段话:
将此文件的副本存储在根目录下名为" js"的目录中 应用程序的目录。
我解释得对吗? js文件夹应该在html中,而不是www?有什么区别?在我的代码中,我有类似的行:
include_once '../../includes/db_connect.php';
include_once '../../includes/functions.php';
和
<script type="text/JavaScript" src="../../js/sha512.js"></script>
<script type="text/JavaScript" src="../../js/forms.js"></script>
虽然php包含了很好的工作,但是javascript却没有。 Firefox检查员抱怨:
GET http://localhost/js/sha512.js [HTTP/1.1 404 Not Found 0ms]
为什么我认为我的js文件夹在html文件夹里面,而不是我告诉它的地方?
答案 0 :(得分:4)
我会尝试将JS放在html文件夹中并像这样链接到它。 <script type="text/JavaScript" src="js/forms.js"></script>
答案 1 :(得分:2)
如果www
文件夹是根目录(即用于http://your-url/
的文件夹),那么您可以执行以下操作:
<script src="/js/sha512.js"></script>
<script src="/js/forms.js"></script>
领先的/
说“从网站的根开始”。
如果html
文件夹是您的根目录,则需要将js
文件夹移动到html
文件夹中 - 您仍然可以使用上面显示的脚本标记。< / p>
浏览器请求JavaScript文件,并禁止公众访问您网站根目录以外的文件夹。您的PHP文件已加载到服务器上,这意味着您可以查看普通公众无权访问的文件。