您的位置:首页 > 运维架构 > 反向代理

Nginx配置反向代理安装和配置-初探

2017-05-05 15:47 656 查看
最近公司项目需要用到Nginx做反向代理以及负载均衡。由于之前一直用的是Apacche,Nginx没有怎么接触过。网上搜了下,资料还挺多,然后根据各种资料,在本机实际操作了下,总体感觉Nginx配置还是挺简单的,我主要的工作还是花在Linux基础包的安装和配置上。

一、Nginx安装

1、操作系统

Redhat Linux 6.4,安装并运行Nginx;

Windows7,运行WEB应用程序;

2、安装GCC编译器

检查Linux是否已安装gcc,使用命令

find / -name gcc

如未安装gcc,则先安装gcc,使用命令

yum install gcc gcc-c++

3、下载并安装Nginx的安装包

本人用的安装包版本是:zlib-1.2.8.tar.gz,pcre-8.36.tar.gz,openssl-1.0.2d.tar.gz

Zlib:

解压:tar–zxvf zlib-1.2.8.tar.gz

进入:cd zlib-1.2.8

配置:./configure

编译:make

安装:make install

Pcre:

解压:tar–zxvf pcre-8.36.tar.gz

进入:cd pcre-8.36

配置:./configure

编译:make

安装:make install

Openssl:

解压:tar–zxvf openssl-1.0.2d.tar.gz

进入:cd openssl-1.0.2d

配置:./config

编译:make

安装:make install

4、安装Nginx

下载此安装包nginx-1.8.0.tar.gz

Nginx:

至你的指定目录解压:tar–zxvf nginx-1.8.0.tar.gz

进入:cd nginx-1.8.0

配置:./configure

编译:make

安装:make install

增加软连接:

执行ls /lib64/ | grep pcre

会显示如下信息:

libpcre.so.0

libpcre.so.0.0.1

然后添加软连接:

执行命令ln -s /lib64/libpcre.so.0.0.1 /lib64/libpcre.so.1

启动:进入/usr/local/nginx/sbin/目录,运行命令:./nginx

停止:pkill -9 nginx

也可查看进程直接杀进程

ps–ef | grep nginx(查看进程号),kill -9 进程号

5、验证安装是否完成

Nginx默认使用80端口,在conf下的nginx.conf中可以查看和修改端口。

在浏览器中输入http://ip,会出现Welcome欢迎界面。

如果访问出现404错误,请检查下防火墙是否关闭

二、反向代理配置

直接打开nginx.conf文件修改相关配置。

本人在配置的时候使用了部分负载均衡的配置,由于只有一台Server,所以相当于单机的反向代理

#负责压缩数据流
gzip  on;
gzip_min_length   1000;
gzip_types        text/plain text/css application/x-javascript;

#设定负载均衡服务器列表
#weight 参数表示权重
upstream balance_test{
server 192.168.205.143:8089 weight=1;
}

server {
listen       8081;
server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main;

#设定查看Nginx状态的地址
#location /nginxstatus{
#	stub_status on;
#	access_log on;
#	auth_basic "nginxstatus";
#	auth_basic_user_file htpasswd;
#}

root   html;
index  index.html index.htm index.jsp;

location / {
#root   html;
#index  index.html index.htm;
proxy_pass http://balance_test; #设置代理,和upstream名字一致

#反向代理的优化配置
proxy_redirect             off;
#后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
proxy_set_header           Host $host;
proxy_set_header           X-Real-IP $remote_addr;
proxy_set_header           X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size       10m; #允许客户端请求的最大单文件字节数
client_body_buffer_size    128k; #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout      300; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_send_timeout         300; #后端服务器数据回传时间(代理发送超时)
proxy_read_timeout         300; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffer_size          4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers              4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size    64k; #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传

}


按照如上配置修改完成后,重新启动Nginx,即可通过Nginx代理服务器访问Server。

直接访问应用服务器应用:http://192.168.205.143:8089/card/

通过代理访问服务器应用:http://192.168.205.165:8081/card/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx 反向代理