nginx – 基于请求的标头的响应

我安装了Nginx 1.0.8.
这是我的问题:
我有2个文件:file1.js和file2.js.请求的路径是这样的:

www.mysite.com/files_dir/%user%/file.js

如果请求的标题:“X-Header”存在且值为“OK”,则响应的内容应为file1.js else file2.js.

这些文件位于“html / files_dir”中,%user%是一组目录,表示通过我的服务注册用户名.

如何在Nginx中配置?我对PHP,asp或类似技术不感兴趣只有在Nginx可能的情况下才有意义.

谢谢

最佳答案
map允许您根据另一个变量定义变量的值. map应该在http级别声明(即在服务器之外):

map $http_x_header $file_suffix {
  default "2";
  OK      "1";
};

然后,以下位置应该使用您的新变量$file_suffix来完成

location ~ ^(/files_dir/.+)\.js${
  root html;
  try_files $1$file_suffix.js =404;
}

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...