Nginx重定向到html文件

时间:2013-11-04 17:24:09

标签: nginx

如何在处理旧浏览器时返回一个简单的html文件。这是系统中的文件。示例nginx.conf

if ($ancient_browser) {
   return /fuul/path/to/file/browser.html; #- how?
}

2 个答案:

答案 0 :(得分:2)

您可以使用if语句进行条件重写。 (参见http://wiki.nginx.org/IfIsEvil)将“foo”之类的栏之间的单词替换为您要匹配的用户代理字符串。您可能需要一个与默认位置具有不同文档根目录的位置。使用last对用户是透明的。 redirect会产生302。

### case sensitive http user agent blocking  ###
if ($http_user_agent ~ (FooSomething|BarElse) ) {
  rewrite ^ /static-html/your-browser-too-old.html last;
}
### case insensitive http user agent blocking  ###
if ($http_user_agent ~* (foo|bar) ) {
  rewrite ^ /static-html/your-browser-too-old.html last;
}

location /static-html {
  root /var/www/static-html;
}

答案 1 :(得分:0)

查看nginx文档中的rewrite directive。我认为这就是你要找的东西。