nginx简单代理配置
原文:https://my.oschina.net/wangnian/blog/791294
前言 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。因为域名只能解析80端口,所以必须需要nginx代理访问。
1.首先下载nginx
http://nginx.org/en/download.html
启动方式 start nginx 启动
nginx.exe -s stop 停止
2.代理的方式
server
{
listen 81 ;
server_name www.baidu.com default;
index index.html;
root /data/abc/;
#auth_basic "input you user name and password";
#auth_basic_user_file /data/test_pwd;
location / {
root /data/abc/;
index index.html index.htm;
}
}
server
{
listen 80 ;
server_name www1.baidu.com default;
#auth_basic "input you user name and password";
#auth_basic_user_file /data/test_pwd;
location / {
proxy_pass http://localhost:8084;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
添加一个 server的节点
listen 80 监听80端口
server_name 域名的地址 如果访问的是weixin.wangnian.com就走代理
location / 访问根路径就走代理
代理可以直接是服务器的位置 也可以代理请求地址
直接访问服务器的位置
root /data/abc/;
index index.html index.htm;
proxy_pass配置为:代理的地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
以上三个配置,如果反向代理服务器不重写该请求头的话,那么后端真实服务器在处理时会认为所有的请求都来在反向代理服务器条负载均衡的配置
3.负载均衡配置
upstream weixin {
server 127.0.0.1:8083;
keepalive 2000;
}
server {
listen 80;
server_name weixin.wangnian.com;
client_max_body_size 1024M;
location / {
proxy_pass http://weixin/;
proxy_set_header Host $host:$server_port;
}
在http节点下,添加upstream节点,可以配置多个服务器地址server,配置多个服务器地址需要配置相应的权重。
添加一个 server的节点
listen 80 监听80端口
server_name 域名的地址 如果访问的是weixin.wangnian.com就走代理
location / 访问根路径就走代理
proxy_pass配置为:http:// + upstream名称,即“http://weixin/”
proxy_set_header Host $host:$server_port; 允许重新定义或者添加发往后端服务器的请求头
看完打开支付宝扫一扫领个红包吧!