【问题标题】:How to disable file reading in node js如何在节点js中禁用文件读取
【发布时间】:2022-01-09 21:50:44
【问题描述】:

我正在使用 Heroku 来部署我的项目。在这里,为什么CSS代码可以打开(/index.html to)?如何禁用这样的文件读取? image

【问题讨论】:

  • 如果您希望用户在任何时候加载这些项目,这是不可能的。换句话说,它是为公众服务的。如果您希望所有用户和服务器本身都无法访问它,那么这就是您对设置和目录进行编码的方式。
  • 作为一个很好的例子,加载任何站点,然后直接转到图像或 CSS 文件。这就是它在互联网上的运作方式!请求城市。
  • 你不能。这就是网络的工作方式。 CSS被用户的浏览器使用,所以浏览器需要读取它。如果浏览器可以读取它,用户就可以读取它。我建议你查看 MDN 的 Client-Server Overview
  • 我如何制作 style.css 或 index.html 只能由 Node js 服务器使用 express 读取。因此,如果 URL 不是在快速请求中,则不会显示任何内容 @BGPHiJACK
  • 您没有将其定义为用户@Niberthix 的公用文件夹。然后,您可以使用 __dirname+"/privatefolder 或其他方式访问它。这种方式根本不会公开,并且不确定这里的用途。如果预期管理/私有部分,您会以不同的方式进行。

标签: node.js express heroku


【解决方案1】:

我认为这是不可能的。浏览器需要访问 CSS 来设置页面样式,并且阻止直接访问它会阻止这种情况。

【讨论】:

  • 所以,我不能禁用它吗?
  • 是的。如果您禁用与 CSS 的直接链接,那么任何形式的使用也将被阻止。当您在 HTML 中包含 CSS 时,浏览器会发送一个 GET 请求来获取 CSS(通过直接链接访问它的方式相同)。
猜你喜欢
  • 1970-01-01
  • 2021-09-13
  • 2014-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多