用户工具


下载Nginx

  • tar 解压
  • ./configure
  • make ; make install
  • 默认安装目录 : /usr/local/nginx
    • 启动 : /usr/local/nginx/sbin/nginx
    • 停止 : /usr/local/nginx/sbin/nginx -s stop
    • 重新载入参数 : /usr/local/nginx/sbin/nginx -s reload
    • 帮助 : /usr/local/nginx/sbin/nginx -h

配置文件

    server {
        listen       80;
        server_name  localhost;
        location / {
                proxy_pass http://localhost:8080;  #代理Apache服务器
        }
        location /files{
                root files_root;#匹配前缀为/files的请求到$nginx/files_root/files/目录下
        }
        location ~ \.(gif|jpg|png)$ { #匹配所有.gif.jpg.pnf后缀的文件到$nginx/images_root目录下
                root images_root;
        }
}

如:当请求为http://localhost/files/a.txt时,nginx会去$NGINX/filesroot目录)。

一个server配置块相当于一个http服务器,如果要提供多个http服务,配置多个server块即可(多个server块端口要不同。主机名不同也可以(如果主机有多个ip或月明),但是很少情况下这么用)

负载均衡(反向代理)配置

location / {
      proxy_pass http://proxy_server;  #  反向代理 upstream proxy_server
}

负载均衡有多种工作方式,具体如下

1、轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

例如:
upstream proxy_server {
server 192.168.159.10;
server 192.168.159.11;
}

2、weight

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

例如:
upstream bakend {
server 192.168.159.10 weight=10;
server 192.168.159.11 weight=10;
}

3、ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。

例如:
upstream resinserver{
ip_hash;
server 192.168.159.10:8080;
server 192.168.159.11:8080;
}