Nginx Linux安装部署教程(针对TCP模块配置安装)
一、Nginx简介
Nginx是一个web服务器也可以用来做负载均衡及反向代理使用,目前使用最多的就是负载均衡。下面直接进入安装步骤:
二、Nginx安装
1、下载Nginx及相关组件
openssl-fips-2.0.10.tar.gz
http://www.openssl.org/source/openssl-fips-2.0.10.tar.gz
zlib-1.2.11.tar.gz
http://zlib.net/zlib-1.2.11.tar.gz
pcre-8.40.tar.gz
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz
nginx-1.10.2.tar.gz
http://nginx.org/download/nginx-1.10.2.tar.gz
tcp模块补丁 需要做tcp代理时必须安装此模块
yaoweibin-nginx_tcp_proxy_module-v0.4.5-37-g121c026.tar.gz
https://github.com/yaoweibin/nginx_tcp_proxy_module/tarball/master
Linux系统是RHEL6.6 64位,root用户登录安装。
安装c++编译环境,如已安装可略过
[root@saas20 nginx]# yum install gcc-c++
省略安装内容…
期间会有确认提示输入y回车
Is this ok [y/N]:y
省略安装内容…
2、安装Nginx及相关组件
openssl安装
[root@saas20 nginx]# tar zxvf openssl-fips-2.0.10.tar.gz
[root@saas20 nginx]# cd openssl-fips-2.0.10
[root@saas20 openssl-fips-2.0.10]# ./config && make && make install
省略安装内容…
pcre安装
[root@saas20 nginx]# tar zxvf pcre-8.40.tar.gz
[root@saas20 nginxc]# cd pcre-8.40
[root@saas20 pcre-8.40]# ./configure && make && make install
省略安装内容…
zlib安装
[root@saas20 nginx]# tar zxvf zlib-1.2.11.tar.gz
[root@saas20 nginx]# cd zlib-1.2.11
[root@saas20 zlib-1.2.11]# ./configure && make && make install
省略安装内容…
【nginx安装正常安装,不带tcp插件安装
[root@saas20 nginx]# tar zxvf nginx-1.10.2.tar.gz
[root@saas20 nginx]# cd nginx-1.10.2
[root@saas20 nginx-1.10.2]# ./configure && make && make install
省略安装内容…】
nginx安装,带TCP插件安装:
解压插件
[root@saas20 nginx]# tar zxvf yaoweibin-nginx_tcp_proxy_module-v0.4.5-37-g121c026.tar.gz
[root@saas20 nginx]# tar zxvf nginx-1.10.2.tar.gz
[root@saas20 nginx]# cd nginx-1.10.2
在nginx安装包目录安装TCP补丁:
[root@saas20 nginx-1.10.2]#patch -p1 < ../yaoweibin-nginx_tcp_proxy_module-121c026/tcp.patch
安装nginx
[root@saas20 nginx-1.10.2]#./configure \
--add-module=../yaoweibin-nginx_tcp_proxy_module-121c026 \
--with-openssl=../openssl-fips-2.0.10
省略安装内容...
make
make install
【./configure \
–add-module=../yaoweibin-nginx_tcp_proxy_module-121c026 \
–with-openssl=../openssl-fips-2.0.10】此处一次性执行
3、测试是否安装成功:
是否安装成功,查找安装路径
[root@saas20 nginx-1.10.2]#whereis nginx
切换到安装目录的sbin下执行:(查版本及安装参数)
[root@saas20 sbin]#./nginx -V
若报错:error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory,按照下面方式解决
1.用whereis libpcre.so.1命令找到libpcre.so.1在哪里
2.用ln -s /usr/local/lib/libpcre.so.1 /lib64命令做个软连接就可以了
[root@saas20 nginx]# whereis libpcre.so.1
[root@saas20 nginx]# ln -s /usr/local/lib/libpcre.so.1 /lib64
[root@saas20 sbin]#./nginx -V
启动nginx:
[root@saas20 sbin]#./nginx
查进程:
[root@saas20 nginx-1.10.2]ps -ef|grep nginx 【三条记录 master是主进程】
在浏览器输入:http://ip:80/ 测试 通过。ip是安装nginx的服务器,80是默认监听端口。
4、配置nginx.conf文件 在安装目录下,与events同级配置,添加如下tcp模块配置:
tcp{
upstream test{
server 192.167.4.55:6213
}
server{
listen 19601
proxy_pass test
}
}
tcp穿透模式 代理192.167.4.55:6213服务器
通过nginx安装服务器 IP:19601 代理远程192.167.4.55:6213访问模式。
我们访问IP:19601时,即可访问到远程192.167.4.55:6213。
我们的应用需要访问远程192时,可以通过nginxIP:19601代替。
后续应用网络端口调整时,只需要调整应用和nginx服务器网络或者配置,无需远程194服务器再动配置。
测试:在另外一台服务器上访问nginx服务器
telnet IP:19601
查看nginx日志:
tcp_access.log、error.log