首页
仓库
文档
nginx手册
Docker手册
workerman
Flask
PHP
python
RabbitMQ
其他
Linux
占位1
占位2
目录
Nginx支持TCP端口转发 nginx从1.9.0开始,新增加了一个`stream模块`,用来实现四层协议的转发、 编译过程中需带上--with-stream。 nginx.conf (请注意,stream配置不能放到http内,即不能放到/etc/nginx/conf.d/,因为stream是通过tcp层转发,而不是http转发) 在nginx.conf添加以下,要求和http{}同级 ``` stream { upstream cakehouse { server 172.17.210.101:10001 weight=5 max_fails=2 fail_timeout=30s ; } server { listen 8888; proxy_connect_timeout 10s; proxy_timeout 5s; proxy_pass cakehouse; } log_format proxy '$remote_addr [$time_local] ' '$protocol $status $bytes_sent $bytes_received ' '$session_time "$upstream_addr" ' '"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"'; access_log /www/wwwlogs/tcp.log proxy ; } ``` nginx会等待session结束才会记录到日志文件; session日志只是tcp层面的记录,包括session时间,发送接收字节数等等; session内部发送日志(比如一个socket连接建立起来以后,多次发送心跳数据)需要在应用层面才能记录;