将 Nginx 重写规则放在项目文件夹内,例如 htaccess 文件

将 Nginx 重写规则放在项目文件夹内,例如 htaccess 文件

Nginx 是否有办法将重写规则放在项目文件夹内,就像 htaccess 文件一样?我一直在 /etc/nginx/sites-available/??? 配置文件中设置规则。

我想在我的 Git 存储库中跟踪这些规则,以便在多个 vagrant 环境中使用,那么有没有办法在项目 www 目录内有一个子配置文件?

我会使用标准 nginx 包含吗?

server {
  include /usr/share/nginx/html/???/rewrites.conf;
  ...
}

这是不好的做法吗(这只是适用于开发环境)?

答案1

事实上这是可以做到的。

您可以在 nginx 配置中包含指定的文件或文件夹(如果您有更多项目的重写)。正如 OP 所建议的,这可以通过在服务器堵塞。

但你应该不是在生产机器上执行此操作!任何拥有 www 文件夹写权限的人都可以严重更改您的 nginx 配置。这是因为 nginx 处理重写的方式。

尽管如此,对于不向公众开放的开发环境来说,它可能还是不错的。

相关内容