【发布时间】:2014-08-01 05:16:33
【问题描述】:
我有一个关于 html 文件权限的问题 - httpd 提供的 css 文件(在 CentOS 上)。
我有一个包含几个 html - php - css 文件的网站。当用户输入我网站的 URL 时,index.html 会按原样显示。我试图浏览我的一个 css 文件(只是为了好玩),我意识到 css 源代码显示在浏览器中。我当然不会发布 css 文件及其确切名称,但有些名称(例如 style.css 、 bootstrap.css 等)是微不足道的,可以尝试轻松获取我的网页样式。
解决办法是什么?我无法取消这些文件的读取权限,因为 apache 不会设置 html 文件的样式(因为它无法读取 css)。
【问题讨论】:
-
你的意思是你要隐藏你的css文件名?
-
我想防止显示css源代码。我希望它仅用于 apache 来设置 html 样式。我可以将 .css 文件更改为不可预测的名称,但我相信我可以让它们保持原样,并防止它们在有人试图访问它们时显示出来。 (例如,通过
/css/style.css 之类的 url) -
你为什么要隐藏你的 CSS 文件不被公开?由于浏览器必须在某个时候下载它,因此任何用户也将能够接收该文件。您可以使用服务器端技术并将您的 CSS 内联,但这也不会隐藏定义本身,这将是不好的做法。您可以通过压缩它来隐藏您的 css,但无论如何,开发人员工具都会使其可读性非常好。当您不希望它可下载时,首先不要上传它。
-
是的,当然 css 是可下载的,并且可以查看我的 html 的样式。但这与查看整个 .css 文件不同。 Css 文件具有 cmets 并且结构良好(至少我的 css :) )并且可以将文件作为一个整体复制并按原样使用代码。 smae 代表 javascript 文件。
-
你不应该担心有人可以查看源代码。如果您不想公开您的 cmets,请使用 CSS 预处理器,如 SASS 或 LESS。您可以防止您的 cmets 在生成的 .css 文件中使用。
标签: html css apache centos file-permissions