当前位置: 首页 > 知识库问答 >
问题:

后端 - nginx 在伺服静态资源时如何防止 403?

穆乐逸
2024-10-18

在 nginx 的配置中,使用到了 user www www; 但是对应的静态文件是 -rw-r--r-- 1 admin admin 6543 Oct 17 17:58 360_20240815233942393_28622f3039.jpg。如果使用这个配置,会发现报 403 错误。把 user www www; 设置为 user admin admin;,依然会报 403。除非设置为 user root root;,但是这样相当于把 nginx 进程以 root 用户的方式执行,有什么方法可以最大限度减少 nginx 的权限,又防止 403 错误,但不修改文件的所属用户和组。

共有1个答案

苏边浩
2024-10-18

文件权限来看没问题,www用户应该可以读取到文件,你需要逐级检查下父目录的权限,确认下 www是否能逐级访问父目录?确保父目录都是 755 权限即可

 类似资料:
  • 每个网站都需要静态资源:图片、样式表、网站图标(favicon)等。在这种情况下,您可以在项目的根目录下创建一个名为 static 的目录。 放入 该目录中的每个文件都将被复制到 生成的 build 文件夹中,并保留目录的层级结构。例如,如果您将名为 sun.jpg 的文件添加到 static 文件夹中,则该文件将被复制到 build/sun.jpg 路径。 这意味着: 对于 baseUrl: '

  • 前言 一个http请求访问web服务静态资源,一般响应结果有三种情况 访问文本,例如js,css,png,jpg,gif 访问静态目录 找不到资源,抛出404错误 原生koa2 静态资源服务器例子 demo源码 https://github.com/ChenShenhai/koa2-note/blob/master/demo/static-server/ 代码目录 ├── static # 静态资

  • 问题内容: 如果我们运行派生类,它将打印派生类和父类。是否有任何方法可以防止静态块的继承? // Class 1 // Class2 基本上我在父类中有一些方法要继承,但不希望实例化派生类时发生在父静态块中的处理。有没有办法做到这一点,否则我将不得不复制代码? 问题答案: 没有。 你不能这样做 。 静态的initialzier块不会被继承。 由于基类扩展了超类,因此在加载类时将执行静态块,即使超类

  • 我是否缺少一些配置选项来防止它崩溃?通常情况下,所有异常都会被捕获并返回一个500错误,而服务器仍然处于活动状态。

  • 问题内容: 我有一个正在运行且工作正常的JSF2应用程序。我在JSF中遇到的问题是资源束。所有资源都有后缀。因此成为在浏览器中加载时。我想拥有它,这样就不会添加到资源中(不要在乎页面本身)。 是否有一个地方,我们可以一个方式 不 具有附加的资源呢? 理想情况下,我不必更改网站的内部运作方式。我在下面列出了一些想法,但我必须说我不太喜欢这些想法。希望在某处找到解决方案? 我在Glassfish 3.

  • JS 代码中引用媒体文件 可以直接在代码中使用 ES6 的 import 语法引入文件并在 JSX 中使用,目前仅支持图片类型的媒体文件。 JSON 中引用媒体文件 当你需要在 app.json 中配置使用的本地媒体文件(比如导航栏图片地址)时,可以将使用到的媒体文件放置到 src 下的某个目录下,并在 build.json 中将其配置到 constantDir 字段的数组中,示例如下: {

  • 相关: 公共基础路径 相关: assetsInclude 配置项 将资源引入为 URL 服务时引入一个静态资源会返回解析后的公共路径: import imgUrl from './img.png' document.getElementById('hero-img').src = imgUrl 例如,imgUrl 在开发时会是 /img.png,在生产构建后会是 /assets/img.2d8e

  • 所有的Markdown文件都通过Vite处理编译成Vue组件。你可以并且应当使用相对URL引用静态资源。 ![An image](./image.png) 你可以在你的Markdown文件、主题中的*.vue组件、样式和纯.css文件使用绝对公共路径(基于项目根目录)或相对路径(基于你的文件系统)。如果你使用过vue-cli或webpack的file-loader,后者更符合你的习惯。 常见的图