我正在创建一个php网站,我想保护我的css文件。因此,如果任何用户试图直接在浏览器中打开它,他将无法看到此代码。我创建了.htaccess文件并写了
# no one gets in here!
deny from all
ErrorDocument 403 "You dont have sufficient priviliges to view this page.
但是现在我的css根本没有在任何页面中呈现。我怎样才能实现这一功能?
答案 0 :(得分:3)
通过.htaccess
保护文件会阻止他们通过浏览器打开。因此,当浏览器尝试加载此文件以呈现CSS时,它将无法访问它。
不知何故显而易见 - 没有?
此外 - 无法保护CSS,HTML,JavaScript文件不会在浏览器中打开它们,因为为了达到目的,应该可以从浏览器访问这些文件...
答案 1 :(得分:2)
不是100%万无一失,但您可以通过HTTP_REFERER检查来完成此操作。
将此代码放入DOCUMENT_ROOT/.htaccess
文件中:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com/ [NC]
RewriteRule \.(css|js|jpe?g|gif|bmp|png)$ - [F,NC]
将yourdomain\.com
替换为您的实际域名。
现在您自己的页面将能够访问css,js,图像文件,但外部无法访问这些文件