如何保护像这个网站的CSS文件

时间:2014-01-15 09:22:27

标签: javascript html css security

我使用this site作为网络字体。 (这是一个像谷歌字体的网络字体提供商) 我需要像这个网站一样保护我的css和js文件。

当你看到下面的html文件时,这个css加载完成并且页面显示正确,但是你没有访问css文件。

此站点用于保护css文件的方法是什么?

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>B Koodak test</title>
        <link href='http://www.font-api.ir/css/B Koodak={font-api.ir}.css' rel='stylesheet'
        type='text/css'>
        <style>
             .myclass{
             font-family:B Koodak,'B Koodak',tahoma;
             font-size:12px;
            }
        </style>
    </head>

    <body>
        <div class="myclass">This Is Test Text.</div>
    </body>
</html>

例如,如果使用访问此链接:

http://www.font-api.ir/css/B Koodak={font-api.ir}.css

此内容位于上述文件的base64中:(感谢@Barmar和@Cracker0dks)

Rk9OVC1BUEkuaXI6DQpTYWxhbSENCnNoYXlhZCBsYXplbSBiYXNoYWQgYmVkYW5pZCBrZSBjb3B5 IGthcmRhbiBrYXJlIGtob29iaSBuaXN0IQ0KbG90ZmFuIGZvbnRlIG1vcmVkZSBuYXphcmUga2hv ZCByYSBheiBmb250LWFwaS5pciBlbnRla2hhYiBrb25pZC4NCg ==

这是解码内容。这是一条消息,请不要复制我的css文件(用波斯语):

FONT-API.ir:
Salam!
shayad lazem bashad bedanid ke copy kardan kare khoobi nist!
lotfan fonte morede nazare khod ra az font-api.ir entekhab konid.

这是我的chrome开发人员工具图片: chrome developer tools image

网络标签,请求标头和响应: chrome developer tools image network tab enter image description here enter image description here

4 个答案:

答案 0 :(得分:5)

您指出的网站正在使用HTTP“Referrer”标头来保护其css文件。但是,绕过这种保护非常简单(例如通过伪造http报头或嗅探浏览器流量)。如果您坚持在您身边应用相同类型的支票,则必须通过网络服务器上的配置来执行此操作。

如果您使用的是Apache Web服务器,可以通过.htaccess执行此操作:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(css)$ - [NC,F,L]

以下是一个可用于生成css文件的htaccess的在线工具: http://www.htaccesstools.com/hotlink-protection/

答案 1 :(得分:0)

他们的css文件是可访问的。我知道自浏览器下载以来无法“保护”。

按照以下步骤查看所有css文件:

1.in chrome,open dev tools(f12)

2.click cntr + o

  1. 输入'.css'
  2. 你现在看到所有的css文件

    编辑回应评论:

    你指的是css的一部分:@ font-face import。由于不可用,您的意思是当您尝试导入此字体时,它无法访问?如果是这样,他们可能会将对http请求的响应限制为字体的网址:http://www.font-api.ir/fontsdir/35.eot?#'

    http://www.font-api.ir处的服务器可以根据请求资源的域来过滤其响应。

答案 2 :(得分:0)

理想情况下......无法保护imagescss js或其他任何内容,因为当浏览器加载网站时,它已加载所有这些元素.....如果浏览器能够加载它,那么任何人都可以看到/下载该网站的资产。

只有可能的事情是使用.htaccess写假冒世界的东西。

至于你引用的网站,正在使用http.setRequestHeader来欺骗你......没有什么是具体的......如果你仍然想要访问他们的东西,只需要做一些谷歌搜索,你你会明白这个区别! :)

答案 3 :(得分:-3)

他们使用.htaccess文件隐藏或保护文件/目录。 HTACCESS是一个功能强大的文件,可以操纵用户控制甚至访问权限。