本篇文件收集了nginx中的常用配置,以作为日后工作参考,不定时更新。
================自定义error_page===============
error_page 502 504 @url;
location @url
{
proxy_pass http://xxx.xxx.xxx.xxx:8080;
proxy_pass_header X-Accel-Redirect;
proxy_connect_timeout 30s;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 32k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_redirect off;
proxy_hide_header Vary;
proxy_set_header Accept-Encoding '';
proxy_set_header Host $host;
proxy_set_header Referer $http_referer;
proxy_set_header Cookie $http_cookie;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
=============根据浏览器规则判断===============
if ( $http_user_agent = "Mozilla/4.0" )
{return 444;}
if ( $http_user_agent ~ Linux )
{return 444;}
=============只允许绑定的域名可以访问============
server {
listen 80 default_server;
server_name _;
return 404;
}
======================自定义404===================
fastcgi_intercept_errors on;
error_page 404 /404.html;
======================nginx正向代理===================
如下配置填到你的配置文件http作用域
resolver 8.8.8.8;
server {
listen 8088;
location / {
proxy_pass http://$http_host$request_uri;
}
}
======================nginx隐藏版本===================
要隐藏版本,直接在配置文件中添加server_tokens off; 就OK了
如果要隐藏自身信息,需要编辑nginx源码再编译
src/core/nginx.h头文件
#define NGINX_VERSION "7.0"
#define NGINX_VER "Microsoft-IIS" NGINX-VERSION
#define NGINX_VER "Microsoft-IIS"
======================map映射规则===================
map $args $foo {
default 0;
debug 1;
}
完整的映射规则:当 $args 的值等于 debug 的时候,$foo 变量的值就是 1,否则 $foo 的值就为 0