隐藏在源上列出的服务器的内部文件结构

时间:2015-12-04 10:22:43

标签: php css .htaccess joomla amazon-ec2

当我浏览我的网站并检查谷歌浏览器中的元素时,通过选择“源”选项卡,我可以获得我网站所有文件夹的列表。事实上,我得到他们的原始名称,我可以下载整个网站代码。

我只想隐藏真正的文件夹名称,因为人们可以使用该文件夹名称来浏览内部网站

我该怎样防止这种情况?我已经在.htaccess文件中列出了Options -Indexes。

我正在使用Joomla并使用Amazon EC2 Ubuntu Server,因此我可以完全控制服务器。

编辑:感谢Pt。 Raman Sharma和LaughingQuoll。我真的不想隐藏css或js。我只是想隐藏真正的文件夹名称,因为人们可以使用该文件夹名称来浏览内部网站

编辑:我的.htaccess文件:

IndexIgnore *
Options +FollowSymlinks
Options -Indexes
RewriteEngine On
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]
RewriteBase /
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]

3 个答案:

答案 0 :(得分:2)

它应该只显示你的css html和JS。这些是前端平台。像PHP和MYSQL这样的后端仍然是隐藏的。所以不要担心这些前端的可见性。

答案 1 :(得分:2)

无法隐藏CSS和JS链接。基本上是因为它们用于显示页面,任何人都可以只回到文件原点(这就是Google Chrome所做的)。所以绝不可能隐藏它。此外,如果您使用CRT + S,您可以保存网页CSS和JS。

答案 2 :(得分:2)

我希望我能正确理解你的问题,如果是这样的话,对你提出的问题没有一个简单的答案。在this question中,他们解释了如何隐藏开发人员工具,这应该是您的目标的良好起点:

  

要明确一点:试图阻止黑客客户端一般是bad idea;   这是为了防范specific social engineering attack

     

如果你最终进入测试组并对此感到恼火,抱歉。我试过了   使the opt-out page变得如此简单   可能仍然可怕,至少停止一些   受害者。

     

实际代码与@joeldixon66's link非常相似;我们的情况有点复杂,没有充分的理由。

     

Chrome将所有控制台代码包装在

with ((console && console._commandLineAPI) || {}) {
  <code goes here>
}
     

...所以网站重新定义console._commandLineAPI投掷:

Object.defineProperty(console, '_commandLineAPI',
   { get : function() { throw 'Nooo!' } })
     

这是not quite enough (try it!),但这是主要技巧。