2012-01-21 65 views
1

可能重复:
How can I block direct access to my JavaScript files?如何防止CSS和JS直接访问文件

我有一个文件夹,里面有大约五个看起来像以下:

1.asset(folder) 
     1.1 css (subfolder) 
       1.1.1 style.css (file) 
     1.2 javascript (subfolder) 
        1.2.1 validation.js (file) 
// goes on like this 

现在的问题是如何防止我的CSS出现当任何用户点击 - my_base_url /资产/css/style.css的浏览?

我试图空白的index.html,但它不工作。我使用.htaccess文件,但在这种情况下,当我打开我的网站上没有找到的CSS“从所有拒绝” ..

+2

这是不可能的,可靠的。 – mario

+1

这是没用的尝试。如果用户的浏览器下载文件,如何阻止用户获取它? – Blender

+2

“你是浏览器吗?然后阅读我的文件并将其存储在缓存中,但永远不要让用户看到它,交易?” –

回答

5

也试过什么你问的是,从技术上讲,是不可能的。

为了使浏览器可以使用CSS,它必须能够访问它。同上Javascript。

你能做的最好的是模糊处理来源。您可以通过使用经过处理的语言(如针对CSS的Stylus或LessCSS,以及针对JS的Coffeescript)或通过使交付更加复杂来实现此目的。您可以缩小脚本文件,甚至可以让它们动态生成并由另一个JS文件提取(小块)。

但是,您所做的任何事情都可以进行反向设计,因为用户必须能够访问规则才能使浏览器使用它们

0

首先,防止直接链接到css文件并不意味着其他人不能看到内容。大多数浏览器都具有检查加载的文件的功能,其中包括您的css。

有一两件事你可以做的就是把在WEB-INF文件夹中的一切,并有控制器加载所有的静态资源。我想不出为什么你想这样做的原因。