http通道连接mysql_通过http tunnel连接mysql

在/etc/nginx/nginx.conf的第一行加上

load_module /usr/lib64/nginx/modules/ngx_http_proxy_connect_module.so;

nginx -s reload

> ```nginx: [emerg] dlopen() "/usr/lib64/nginx/modules/ngx_http_proxy_connect_module.so" failed (/usr/lib64/nginx/modules/ngx_http_proxy_connect_module.so: cannot open shared object file: No such file or directory) in /etc/nginx/nginx.conf```

又要开始折腾了, 没有ngx_http_proxy_connect_module, google了一把, ngx_http_proxy_connect_module

相当于重新编译nginx, 有几个坑, 不过意外发现有个go的开源库,专门编译nginx,刚好我是go开发,go的库nginx-build, 但是下面说的跟这个库没关系, 只是打个go的广告^_^

(1) 选定对应的nginx源码zip,更改nginx的version, nginx -v

(2) ./configure的编译参数, 需要提前nginx -V复制之前的启动参数下来

(3) 执行path的时候需要看`https://github.com/chobits/ngx_http_proxy_connect_module`的说明,哪个版本用哪个patch

$ git clone https://github.com/chobits/ngx_http_proxy_connect_module.git /root/ngx_http_proxy_connect_module

$ wget http://nginx.org/download/nginx-1.12.2.tar.gz

$ tar -xzvf nginx-1.12.2.tar.gz

$ cd nginx-1.12.2/

$ patch -p1 < /root/ngx_http_proxy_connect_module/patch/proxy_connect.patch

$ ./configure --add-module=/root/ngx_http_proxy_connect_module ·后面接上nginx -V里面的configure arguments·

$ make && make install

$ cp /root/ngx_http_proxy_connect_module

执行过程

$ ./configure --add-dynamic-module=/root/ngx_http_proxy_connect_module --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --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_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-google_perftools_module --with-debug --with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic' --with-ld-opt='-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E'

出现各种错误,各种google,最终

yum -y install redhat-rpm-config.noarch

yum -y install libxslt-devel

yum -y install perl-devel perl-ExtUtils-Embed

yum -y install gd-devel

yum -y install geoip-devel

yum -y install gperftools-devel

最后编译只出现warning类的报错才算成功

+ using system PCRE library

+ using system OpenSSL library

+ using system zlib library

nginx path prefix: "/usr/share/nginx"

nginx binary file: "/usr/sbin/nginx"

nginx modules path: "/usr/lib64/nginx/modules"

nginx configuration prefix: "/etc/nginx"

nginx configuration file: "/etc/nginx/nginx.conf"

nginx pid file: "/run/nginx.pid"

nginx error log file: "/var/log/nginx/error.log"

nginx http access log file: "/var/log/nginx/access.log"

nginx http client request body temporary files: "/var/lib/nginx/tmp/client_body"

nginx http proxy temporary files: "/var/lib/nginx/tmp/proxy"

nginx http fastcgi temporary files: "/var/lib/nginx/tmp/fastcgi"

nginx http uwsgi temporary files: "/var/lib/nginx/tmp/uwsgi"

nginx http scgi temporary files: "/var/lib/nginx/tmp/scgi"

./configure: warning: the "--with-ipv6" option is deprecated

ls /usr/lib64/nginx/modules 就会发现ngx_http_proxy_connect_module.so文件已经生成了, /usr/lib64/nginx/modules是modules路径, nginx -V可以看到–modules-path

开始配置nginx

stream {

server {

listen 443;

server_name t1.test.example.com;

proxy_connect;

proxy_connect_allow 443;

proxy_connect_connect_timeout 10s;

proxy_connect_read_timeout 10s;

proxy_connect_send_timeout 10s;

proxy_pass http://$http_host;

}

}

尴尬的发现到这里又做下不去了,只能转发http的流量,无法利用http的tunnel改为tcp流量,到此结束

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/567322.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

山洪沟防洪治理工程技术规范_幸福沟水库一期工程完工丨尚志城市供水、防洪、农业灌溉皆升级...

日前&#xff0c;尚志市幸福沟水库一期工程建设完成&#xff0c;已蓄水试运行。幸福沟水库工程是列入黑龙江省“十三五”规划的重点水利项目&#xff0c;是哈市重点推进的两座中型水库之一&#xff0c;也是尚志市一项打基础、利长远、惠民生的重大战略民生工程。幸福沟水库位于…

子类怎么继承父类方法中的变量_JavaOOP_04 封装 继承

一、封装概念&#xff1a;隐藏程序内部的具体实现细节&#xff0c;对外提供接口&#xff0c;从而提高程序的安全性。高内聚&#xff0c;低耦合。使用封装的步骤&#xff1a;1、属性私有化&#xff0c;使用private访问修饰符进行修饰2、对外提供 setter/getter 方法 setter设置值…

mySQL字符串字段区别_MySQL类型之(字符串列类型区分、数据类型区分)

1.首先CHAR, VARCHAR, TEXT和BINARY, VARBINARY, BLOB的区别&#xff1a;CHAR, VARCHAR, TEXT称为&#xff1a; 非二进制字符串;BINARY, VARBINARY, BLOB称为&#xff1a;二进制字符串;非二进制字符串和二进制字符串的区别是&#xff1a;非二进制字符串包含的是字符字符串…

mysql 社区版密码如何修改_如何用优雅的方法修改MySQL root密码

搭噶好&#xff0c;我系小编&#xff0c;我好久没发文章了啊&#xff0c;今天发文章的原因是&#xff0c;我竟然忘了我的MySQL root密码。。本来想找RAKsmart客服直接重置啥的&#xff0c;后来想想还是自己搞吧&#xff0c;还能长知识。然后&#xff0c;我发现一个事情&#xf…

python全局变量赋值_Python全局变量和局部变量

python中&#xff0c;对于变量作用域的规定有些不一样。在诸如C/C、java等编程语言中&#xff0c;默认在函数的内部是能够直接訪问在函数外定义的全局变量的&#xff0c;可是这一点在python中就会有问题。以下是一个样例。test.py:#!/usr/bin/pythonCOUNT1def func():COUNT CO…

mysql dos入门_在dos上操作mysql的基本?

2安装:A,双击运行“mysql-5.5.27-win32.msi”B,MySQL安装向导启动C,按“Next”继续3配置&#xff1a;MySQL是现在流行的关系数据库中其中的一种&#xff0c;相比其它的数据库管理系统(DBMS)来说&#xff0c;MySQL具有小巧、功能齐全、查询迅捷等优点。MySQL 主要目标是快速、健…

python读取api接口频率_Python基础(API接口测试)

importflask,json,pymysqlfrom flask importrequest, jsonify, Responsefrom datetime importdatetimefrom flask_cors importCORSdbpymysql.Connect(hostlocalhost,port3306,userroot,passwd24576946,dbschool,)cursordb.cursor()server flask.Flask(__name__)#允许跨域访问CO…

mysql初始化脚本建表_mysql新建表修改表sql脚本

新建表语句&#xff1a;-- ------------------------------------------------- 全量脚本-- ------------------------------------------------- 创建表 compet_info(大赛信息)的当前表SELECT Create Table compet_info-大赛信息...;DROP TABLE IF EXISTS compet_info;CREATE …

中countif函数_Count系列函数-Count、Counta、Countblank、Countif、Countifs

统计函数在我们的日常工作中也会经常使用。常见的有Count、Counta、Countblank、Countif、Countifs五个。Count用于统计数据类型的单元格个数&#xff0c;Counta用于统计非空单元格的个数&#xff0c;Countblank用于统计空单元格的个数&#xff0c;而Countif、Countifs用于条件…

labview实例_手把手以实例教你学LabVIEW编程,条件结构编程方法

LabVIEW又称为G语言&#xff0c;简单易学、形象直观&#xff0c;采用图形化的编程方式&#xff0c;是专为测试、测量和控制应用而设计的系统工程软件。在上篇文章(请参考&#xff1a;顺序结构编程)中已经讲了顺序结构的编程方法&#xff0c;下面通过具体例子演示条件结构的编程…

mysql数据变化通通知机制_深入理解Notification机制

先贴上这些源码里面相关的文件&#xff1a;framework/base/core/java/android/app/NotificationManager.javaframework/base/services/java/com/android/server/NotificationManagerService.java{hide} extends INotificationManager.Stubframework/base/services/java/com/and…

python与h5结合实例_使用h5py合并所有h5文件

您需要的是文件中所有数据集的列表。我认为这里需要的是recursive function的概念。这将允许您从一个组中提取所有的“数据集”&#xff0c;但是当其中一个看起来是组本身时&#xff0c;递归地执行相同的操作&#xff0c;直到找到所有数据集为止。例如&#xff1a;/|- dataset1…

vfp 调用 mysql uft-8 connstring_(最全的数据库连接字符串)connectionstring

PS:如果不是太稳定的数据库&#xff0c;最好使用connection lifetime10来限制连接池内连接的生存日期Standard Security:"Driver{SQL Server};ServerAron1;Databasepubs;Uidsa;Pwdasdasd;"Trusted connection:"Driver{SQL Server};ServerAron1;Databasepubs;Tru…

python3ide手机端怎么样_各大Python IDE的优缺点,看看哪种最适合你?

写 Python 代码最好的方式莫过于使用集成开发环境(IDE)了。它们不仅能使你的工作更加简单、更具逻辑性&#xff0c;还能够提升编程体验和效率。每个人都知道这一点。而问题在于&#xff0c;如何从众多选项中选择最好的 Python 开发环境。初级开发者往往面临这个问题。本文将概述…

八大算法python实现_python实现协同过滤推荐算法完整代码示例

测试数据协同过滤推荐算法主要分为&#xff1a;1、基于用户。根据相邻用户&#xff0c;预测当前用户没有偏好的未涉及物品&#xff0c;计算得到一个排序的物品列表进行推荐2、基于物品。如喜欢物品A的用户都喜欢物品C&#xff0c;那么可以知道物品A与物品C的相似度很高&#xf…

用递归与分治策略求解网球循环赛日程表_算法设计:分治法(比赛日程安排)...

一、算法思路1、思路分治算法的思想是&#xff1a;对于一个规模位N的问题&#xff0c;若该问题可以容易解决(比如规模N较小)&#xff0c;则直接解决&#xff0c;否则将其分解为M个规模较小的子问题&#xff0c;这些子问题互相独立&#xff0c;并且与原问题形式相同&#xff0c;…

python请编写程序、生成随机密码_利用Python如何生成随机密码

本位实例为大家分享了Python生成随机密码的实现过程&#xff0c;供大家参考&#xff0c;具体内容如下写了个程序&#xff0c;主要是用来检测MySQL数据库的空密码和弱密码的&#xff0c;在这里&#xff0c;定义了三类弱密码&#xff1a;1. 连续数字&#xff0c;譬如123456&#…

centos6.5装mysql好难_centos 6.5装mysql5.7

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼报错er-5.7.17-1.el7.i686 需要--> 处理依赖关系 libc.so.6(GLIBC_2.17)&#xff0c;它被软件包 mysql-community-server-5.7.17-1.el7.i686 需要--> 完成依赖关系计算错误&#xff1a;Package: mysql-community-client-5.7.…

聚类算法 距离矩阵_谱聚类

比起传统的K-means算法&#xff0c;谱聚类对数据分布的适应性更强&#xff0c;计算量也要小很多。1. 谱聚类概述谱聚类是从图论中演化出来&#xff0c;主要思想是吧所有的数据看作空间中的点&#xff0c;这些点之间可以用边连接起来。距离较远的两个点之间的边权重值较低&#…

core mysql 延迟加载_mybatis延迟加载及实例讲解

延迟加载基本概念上面我们已经知道使用association、collection可以实现一对一及一对多映射&#xff0c;association、collection还有另外一个延迟加载的功能。延迟加载(lazy load)是关联对象默认的加载方式&#xff0c;延迟加载机制是为了避免一些无谓的性能开销而提出来的&am…