问题描述
我希望能把不同UA的的访问日志定位到不同的access_log里,但是access_log这个参数貌似不允许放在if里。我有不想通过rewrite之类的方法,把不同的请求定位到不同的location里,在同一个location里如何依据UA来指定accesss_log呢?
问题解答
回答1:可以这么配置,应该还有更好的写法。
location /log { if ($http_user_agent ~ MSIE ) { access_log /var/log/msie.log; } if ($http_user_agent ~ Opera ) { access_log /var/log/opera.log; } if ($http_user_agent ~ Webkit ) { access_log /var/log/webkit.log; } if ($http_user_agent ~ Mozilla ) { access_log /var/log/mozilla.log; } add_header 'Content-Type' 'text/plain;charset=UTF-8'; return 200 '$http_user_agent';}