我需要根据用户代理提供不同的文件.这是一个非常基本的要求,比提供文件提高了一步.
standard answer似乎是,使用if语句.
然而,它显然是众所周知的if
statements shouldn’t be used.
所以现在答案似乎是Apache,但我告诉我的老板nginx是一个有用的产品.有什么建议?
最佳答案 如果你仔细阅读
if is evil,你会发现它有以下引用:
The only 100% safe things which may be done inside if in location context are:
return ...;
rewrite ... last;
Anything else may possibly cause unpredictable behaviour, including potential
SIGSEGV.
所以…
if的邪恶只适用于在一个位置块内使用
在一个位置块内,有两个,只有两个,保证使用if块:
>一个人独自回归……;声明
>一个人持有一个单独的重写…最后;声明
>(注意一个空的if块也会导致问题)
在位置块中if的非保证使用可能有效,但需要进行测试