Linux下nginx添加stream模块支持Tcp转发

方式1 yum直接安装

  1. 安装nginx
yum install nginx
  1. 安装模块
yum install nginx-mod-stream -y
  1. 添加转发配置 /etc/nginx/nginx.conf底部添加
stream {server {listen 8666;proxy_connect_timeout 360s;proxy_timeout 360s;proxy_pass xxx.xxx.xxx.xxx:8666;}
}
  1. 运行测试
# 运行
nginx
# 重载配置文件
nginx -s reload

方式2 源码编译

一、安装编译工具
yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel
二、安装PCRE

PCRE (Perl Compatible Regular Expressions) 是一个用于处理正则表达式的库,它是一个C语言的库,可以在多种编程语言中使用。PCRE库提供了一套API来编译和执行正则表达式,并提供了一组函数来匹配、查找和替换文本中符合正则表达式的模式。PCRE库与Perl的正则表达式语法兼容,因此可以直接使用Perl的正则表达式语法。

如果我们在nginx.conf配置文件中使用了正则表达式,那么在编译Nginx时必须将PCRE库编译进Nginx。这是因为Nginx的HTTP模块需要依赖PCRE库来解析正则表达式。

  1. 进入下载目录
cd /usr/local/src/
  1. 下载
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
  1. 解压
tar zxvf pcre-8.35.tar.gz
  1. 安装
./configure
make && make install
三、编译运行nginx
  1. 下载源码
cd /usr/local/src/
wget http://nginx.org/download/nginx-1.25.3.tar.gz
  1. 解压
tar zxvf nginx-1.25.3.tar.gz
  1. 进入源码目录
cd nginx-1.25.3
  1. 配置
./configure --prefix=/opt/nginx --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-pcre=/usr/local/src/pcre-8.35 --with-stream
  1. 编译安装
# 编译
make
# 安装
make install
  1. 配置文件 /opt/nginx/etc/nginx.conf
# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
#pid /run/nginx.pid;# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
# include /usr/share/nginx/modules/*.conf;events {worker_connections 1024;
}http {log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  /var/log/nginx/access.log  main;sendfile            on;tcp_nopush          on;tcp_nodelay         on;keepalive_timeout   65;types_hash_max_size 2048;autoindex on;autoindex_exact_size off;autoindex_localtime on;include       mime.types;default_type        application/octet-stream;# Load modular configuration files from the /etc/nginx/conf.d directory.# See http://nginx.org/en/docs/ngx_core_module.html#include# for more information.include /opt/nginx/conf/conf.d/*.conf;server {listen       80 default_server;listen       [::]:80 default_server;server_name  _;root         /usr/share/nginx/html;# Load configuration files for the default server block.include /opt/nginx/conf/default.d/*.conf;location / {root   html;index  index.html index.htm;}error_page 404 /404.html;location = /40x.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}}include /opt/nginx/conf/vhosts/*.conf;
}stream {server {listen 8666;proxy_connect_timeout 360s;proxy_timeout 360s;proxy_pass locktcp.cosinwx.com:8666;}
}
  1. 运行
# 运行
./opt/nginx/sbin/nginx
# 重载配置文件
./opt/nginx/sbin/nginx -s reload

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

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

相关文章

Centos7 openSSL

阅读时长:10分钟 本文内容: 在阿里云Centos7上部署python3.10.6项目时遇到openSSL协议不支持,导致无法下载第三方包 本文目的: 通过手动编译,升级openssl版本centos7 重编译 python3.10.6github下载缓慢解决镜像源记录…

[每周一更]-(第38期):Go常见的操作消息队列

在Go语言中,常见的消息队列有以下几种: RabbitMQ:RabbitMQ是一个开源的AMQP(高级消息队列协议)消息代理软件,用于支持多种编程语言,包括Go语言。RabbitMQ提供了可靠的消息传递机制和灵活的路由…

基于SSM的在线学习系统的设计与实现论文

基于SSM的在线学习系统的设计与实现 摘要 随着信息互联网购物的飞速发展,一般企业都去创建属于自己的管理系统。本文介绍了在线学习系统的开发全过程。通过分析企业对于在线学习系统的需求,创建了一个计算机管理在线学习系统的方案。文章介绍了在线学习…

机器学习之过拟合和欠拟合

过拟合 概念 过拟合(Overfitting)是机器学习中常见的问题之一,它指的是模型在训练数据上表现很好,但在未见过的新数据上表现较差的情况。过拟合的根本原因是模型过度地适应了训练数据的噪声和细节,而忽略了真实数据的潜在模式。 导致过拟合的一些常见原因和防止方法: …

js字符与ASCII码互转的方法

字符 to ASCII码 var str"A"var c str.charCodeAt()console.log(A ,str.charCodeAt());//65ASCII码 to 字符 var s String.fromCharCode(0x41)//0x4165,直接填65是一样的 console.log(s ,s);//Aint类型 to 字符串 比如var s 0x41424344 0x41 对应 ‘A’ 0x42 对…

【习题】运行Hello World工程

判断题 1. DevEco Studio是开发HarmonyOS应用的一站式集成开发环境。 正确(True)错误(False) 正确(True) 2. main_pages.json存放页面page路径配置信息。 正确(True)错误(False) 正确(True) 单选题 1. 在stage模型中,下列配置文件属于AppScope文件夹的是&am…

信号与线性系统翻转课堂笔记7——信号正交与傅里叶级数

信号与线性系统翻转课堂笔记7——信号正交与傅里叶级数 The Flipped Classroom7 of Signals and Linear Systems 对应教材:《信号与线性系统分析(第五版)》高等教育出版社,吴大正著 一、要点 (1,重点&a…

【Mysql】哪些sql无法使用到索引

目录 1.使用 OR 连接多个条件&#xff1a; 2.使用 LIKE 通配符 % 作为前缀&#xff1a; 3.使用 BETWEEN 范围查询&#xff1a; 4.使用 ! 或 <> 操作符&#xff1a; 5.使用 DISTINCT 关键字&#xff1a; 6.使用 FUNCTION() 或 EXPRESSION 包含列&#xff1a; 7.使用…

安全、效率、成本:混合云数据库管理的三重挑战!

随着业务需求的不断演变&#xff0c;数据在多云平台之间流动&#xff0c;给数据库管控带来了新的层次和复杂性。这给数据库管控带来了前所未有的挑战。企业可能面临着一系列问题&#xff0c;包括安全性挑战、管理复杂性、性能与效率问题、成本控制难题、缺乏统一的管理视图以及…

php反序列化漏洞原理、利用方法、危害

文章目录 PHP反序列化漏洞1. 什么是PHP反序列化漏洞&#xff1f;2. PHP反序列化如何工作&#xff1f;3. PHP反序列化漏洞是如何利用的&#xff1f;4. PHP反序列化漏洞的危害是什么&#xff1f;5. 如何防止PHP反序列化漏洞&#xff1f;6. PHP反序列化漏洞示例常见例子利用方法PH…

elementUI CDN引入本地文件报错,刷新页面报错

报错原因&#xff1a;vue.config.js的externals 配置中有外部cdn引入配置&#xff0c;而当前场景我的element是直接下载放在本地的&#xff0c;这时就需要将配置注释或者删除 webpack 中的 externals 配置项用于指定在打包时需要排除掉的模块&#xff0c;这些模块会被视为外部依…

Rust中peekable的使用

在 Rust 中&#xff0c;从迭代器中获取&#xff08;也就是“消费”&#xff09;一个元素时&#xff0c;每次调用 next 方法都会“消费”迭代器的一个元素&#xff0c;这意味着此元素被从迭代器中移除并返回给调用者&#xff0c; 一旦一个元素被消费&#xff0c;它就不能再次从同…

maven下载jar包失败

配置国内镜像 设置国内的仓库,比如: <!--阿里仓库--><mirror><id>alimaven</id><name>aliyun maven</name><url>https://maven.aliyun.com/repository/public/</url><mirrorOf>central</mirrorOf></mirror>…

医学实验室检验科LIS信息系统源码

实验室信息管理是专为医院检验科设计的一套实验室信息管理系统&#xff0c;能将实验仪器与计算机组成网络&#xff0c;使病人样品登录、实验数据存取、报告审核、打印分发&#xff0c;实验数据统计分析等繁杂的操作过程实现了智能化、自动化和规范化管理。 实验室管理系统功能介…

nuxt打包占用磁盘IO

目录 前言排除过程 前言 jenkins运行打包&#xff0c;总是要卡一段时间&#xff0c;磁盘IO很高。我手动执行后的确发现了这个问题&#xff0c;如下图所示。 排除过程 我的方案很原始&#xff0c;利用git恢复到以前的版本&#xff0c;抽检&#xff0c;搞了差不多两个小时&am…

vue中添加change的js事件并根据下拉框内容动态改变另一个组件中的数据(亲测有效)

vue中添加change的js事件并根据下拉框内容动态改变另一个组件中的数据 话不多说看我怎么完成的&#xff0c;以我当前实现的例子演示 我想根据班级下拉框来动态改变报名费内容 具体步骤如下&#xff1a; 1.首先给下拉框的组件加一个change change“changeFeiByclass” 2.在met…

关于Triple DES(3DES)对称加密算法

一、引言 在网络安全领域&#xff0c;对称加密算法作为一种常见的加密手段&#xff0c;被广泛应用于保障数据传输的保密性和完整性。其中&#xff0c;DES&#xff08;Data Encryption Standard&#xff09;算法作为一种经典的对称加密算法&#xff0c;由IBM于1970年代开发&…

mac上使用 Downie 下载网页视频

在今天的数字时代&#xff0c;视频内容在互联网上的传播变得更加普遍和便捷。然而&#xff0c;有时我们可能希望将网页上的视频保存在本地&#xff0c;以便离线观看或与他人分享。Downie 是一款强大而简便的工具&#xff0c;专门设计用于下载网页上的视频内容。本文将介绍 Down…

多维时序 | MATLAB实现SSA-CNN-SVM麻雀算法优化卷积神经网络-支持向量机多变量时间序列预测

多维时序 | MATLAB实现SSA-CNN-SVM麻雀算法优化卷积神经网络-支持向量机多变量时间序列预测 目录 多维时序 | MATLAB实现SSA-CNN-SVM麻雀算法优化卷积神经网络-支持向量机多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 多维时序 | MATLAB实现…

【智慧办公】如何让智能会议室的电子标签实现远程、批量更新信息?东胜物联网硬件网关让解决方案更具竞争力

近年来&#xff0c;为了减少办公耗能、节能环保、降本增效&#xff0c;越来越多的企业开始从传统的办公模式转向智慧办公。 以智能会议室为例&#xff0c;会议是企业业务中不可或缺的一部分&#xff0c;但在传统办公模式下&#xff0c;一来会议前行政人员需要提前准备会议材料…