博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Nginx TCP Proxy模块的编译安装
阅读量:5739 次
发布时间:2019-06-18

本文共 3737 字,大约阅读时间需要 12 分钟。

这次用一个国内开发者在GitHub上的开源项目

我的系统已经安装了最新的Nginx,现在需要下载源代码编译出自己的版本。

wget http://nginx.org/download/nginx-1.5.3.tar.gztar zxvf nginx-1.5.3.tar.gz

 

 

然后获得nginx_tcp_proxy_module的项目:

 

git clone https://github.com/yaoweibin/nginx_tcp_proxy_module.git

现在给Nginx打补丁

 

 

cd nginx-1.5.3/root@dean-GA-MA790XT-UD4P:/usr/src/nginx-1.5.3# patch -p1 < /usr/src/nginx_tcp_proxy_module/tcp.patch patching file src/core/ngx_log.cHunk #1 succeeded at 69 (offset 3 lines).patching file src/core/ngx_log.hHunk #1 succeeded at 30 (offset 1 line).Hunk #2 succeeded at 38 (offset 1 line).patching file src/event/ngx_event_connect.hHunk #1 succeeded at 33 (offset 1 line).Hunk #2 succeeded at 44 (offset 1 line).

还要安装个ssl库

 

 

apt-get install libssl-dev

但是卸载掉自动安装的libstdc++6-4.7-dev, 因为我用的是gcc4.8.1

 

 

apt-get autoremove

好了,现在配置makefile,首先查看当前系统安装好的Nginx的配置选项:

 

 

nginx -Vnginx version: nginx/1.5.3built by gcc 4.7.3 (Ubuntu/Linaro 4.7.3-1ubuntu1) TLS SNI support enabledconfigure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-file-aio --with-http_spdy_module --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro' --with-ipv6

 

然后原封不动的使用这些配置参数,但是加上最后一个

 

--add-module=/usr/src/nginx_tcp_proxy_module

 

./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-file-aio --with-http_spdy_module --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro' --with-ipv6 --add-module=/usr/src/nginx_tcp_proxy_module

现在开始编译吧。

 

 

make

得到的nginx程序位于objs目录. 将nginx服务停掉,并替换之。

 

 

service nginx stopmv /usr/sbin/nginx /usr/sbin/nginx_bk/usr/src/nginx-1.5.3/objs# cp nginx /usr/sbin/service nginx startps -def | grep nginxroot     23479     1  0 23:21 ?        00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.confroot     23480 23479  0 23:21 ?        00:00:00 nginx: worker process                   root     23482 13006  0 23:21 pts/0    00:00:00 grep --color=auto nginx

 

 

 

转载地址:http://rsfzx.baihongyu.com/

你可能感兴趣的文章
oracle 启用版本化控制,Oracle DG 物理Standby创建步骤
查看>>
php 获取网络文件数据格式化,Tmall网页采集数据格式化分析类
查看>>
删除环境变量classpath和path中有关oracle的设定,在win7下如何安装和卸载oracle_10g
查看>>
linux解冻用户的密码,linux帐号管理详解:/etc/passwd 和/etc/shadow
查看>>
linux 获得进程号,Linux获得进程号
查看>>
linux怎么创建一个大的文件,linux之创建大文件
查看>>
复制删除linux权限,linux文件管理命令实例分析【权限、创建、删除、复制、移动、搜索等】...
查看>>
linux查询惠普服务器信息,服务器-惠普 HP ProLiant-linux系统-RAID信息查看和阵列卡操作-hpacucli工具使用...
查看>>
centos中文站 - 专注linux技术,centos7安装supervisor
查看>>
linux命令 编辑,LINUX 命令行编辑
查看>>
嵌入式linux 线程互锁,《重要》内核下各种同步处理方法(自旋锁、信号灯、互斥体…)...
查看>>
linux网线拔了 网卡自动禁用,拔出网线和禁用网卡有何区别
查看>>
linux yum 升级 php,linux – 如何使用yum升级到CentOS中的最新PHP版本?
查看>>
linux原生迅雷文本模式,ubuntu 下运行原生的迅雷
查看>>
网易 linux性能优化工程师,云计算人才必须掌握什么 怎么学Linux性能优化
查看>>
linux系统真正优势学习方法,Linux系統真正的優勢以及學習方法,linux優勢學習方法...
查看>>
上海师范大学c语言考卷答案,上海师范大学C语言期末考试标准试卷.doc
查看>>
c语言经典程序100例 - 百度,经典C语言程序100例(1-10)
查看>>
c语言中利用switch判断星期几,输入字母,判断星期几,求大神指点
查看>>
c语言中多线程的基本原理,如何用C语言实现多线程
查看>>