我的codeingiter Web应用程序中目录'application'和'system'中的每个子目录都有一个index.html文件。在这个HTML文件中,看起来是标准错误消息。它包含以下代码:
<html>
<head>
<title>403 Forbidden</title>
</head>
<body>
<p>Directory access is forbidden.</p>
</body>
</html>
我认为这些是创建的,如果有人试图访问“应用程序”或“系统”内的目录,它将不会列出所有文件,而是显示错误。
这些似乎是多余的,因为我在每个目录中添加了.htaccess以拒绝所有访问。这两个目录中的每个PHP文件也都有第一行:
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
这应该意味着没有人可以查看任何这些文件(因为我受.htaccess保护一次,PHP保护一次)。
因此,我的问题是 - 为了保持我的Web应用程序井然有序,我可以安全地删除这些index.html文件吗?这会对我的codeigniter Web应用程序造成任何不良副作用吗?
提前致谢
答案 0 :(得分:2)
是,您可以将其删除。
但即使您拥有适当的权利,您也应该拥有它们。因为它们仅用于目的,以防您忘记实现正确的目录浏览权限
答案 1 :(得分:1)
如果您设置了.htaccess
文件,该文件没有重定向到您的index.html
文件或与您的index.html
文件没有任何关系,那么删除您的{{{我是安全的(并且无需保留) 1}}。但你应该小心。如果您使用index.html
.htaccess
可以提供帮助
答案 2 :(得分:1)
一般情况下,您可以删除这些index.html文件,但需要确保在Web服务器配置中禁用了目录索引。
对于Apache Web服务器,您可以在全局配置或.htaccess文件中使用选项 - 索引,如下所示:
<Directory /wwwdata/ >
#disable directory index
Options -Indexes
#other options ...
</Directory>
CodeIgniter中的那些index.html文件会阻止(无论如何)目录列表,这会导致严重的安全流程。
答案 3 :(得分:0)
虽然我同意.htaccess和基本路径条件检查已经足够好了,但我并不认为在两个目录中有两个html文件会使任何事情变得混乱。在将内容放到网上时,你永远不会小心,CodeIgniter的人肯定会在添加之前考虑过它。
我真的没有看到任何增值删除它们,但如果这是你想要做的事情,那就继续。
答案 4 :(得分:0)
但我建议保留index.html。保持index.html不会损害您的应用程序,但确保它可以提供某种保护。
答案 5 :(得分:0)
如果您说您已禁止访问.htaccess目录,那么您可以安全地删除它们,让您的后顾之忧消失!
但是,如果PHP脚本出于某些原因使用该目录并将某些内容放在这些目录中,然后提供指向用户的链接,例如,它将无法正常工作,您将不得不删除.htaccess限制。
我建议只留一个空白 index.html ,当用户到达目录时,只会显示一个空白页。
或者您可以使用 index.php 强制用户重定向到主页面,例如:
<?php
header("Location: ../");
?>