nginx:解析 UA 并按 UA 部分进行 try_files

nginx:解析 UA 并按 UA 部分进行 try_files

给出的内容:

  1. nginx版本:nginx/1.9.3;
  2. /var/www/站点/js/站点.chrome.js- 针对 Chrome 的特定代码;
  3. /var/www/站点/js/站点.firefox.js- 针对 Firefox 的特定代码;
  4. 站点.chrome.js站点.firefox.js根据在哪个浏览器运行代码,在浏览器端进行选择;
  5. UA:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML,如 Gecko) Chrome/44.0.2403.155 Safari/537.36

问题:我不想在浏览器中指定要加载哪个 JS 文件,而是想将此任务转移给 nginx 服务器,以便

  1. 浏览器只是指向一个 URL,例如http://server.com/js/site.js
  2. nginx 解析器UA,提取物操作系统浏览器名称,以及它的版本并在以下目录结构中查找 site.js:
js
 |
 +-site.js
 |
 +-Linux
     |
     +-铬
     | |
     | +-站点.js
     | |
     | +-44
     | | |
     | | +-站点.js
js/site.js应该被视为一种后备,这意味着如果 nginx 无法找到合适的站点.js沿着树向下,它使用 js/site.js 文件。

鉴于上述 UA,nginx 应该按照以下步骤查找 site.js:

  1. js/linux/chrome/44/site.js
  2. js/linux/chrome/site.js
  3. js/linux/site.js
  4. js/site.js

问题是:

  1. 这种在目录树中组织浏览器特定文件的方式是否有意义?如果有意义的话……
  2. 这种方式可以用nginx服务器实现吗;

相关内容