Nginx 基本配置(log_format,rewrite,proxy)(转)

NGINX日志深度解析:Access Log与Error Log协同排障实战 NGINX日志是HTTP流量链路的原始证据链,其核心价值在于提供可追溯、可验证的请求全生命周期数据。Access Log记录事务终结时的结构化快照,包含客户端IP、请求路径、状态码、耗时($request_time)及上游响应时间($upstream_response_time)等关键指标;Error Log则作为进程级诊断报告,以异步方式输出worker崩溃、连接拒绝、权限错误等底层异常。二者协同构成故障定位的黄金组合:前者暴露现象模式,后者锁定根因位置。在可观测性建设中,精准定制log_format、分 阅读详情

原文地址:http://www.whohelpme.com/blog/post/detail/35.html

自己动手写博客1

Nginx  基本配置(log_format,rewrite,proxy)

基本环境

阿里云机器:x86_64-redhat-linux-gnu,Nginx,Tomcat

Nginx gzip压缩

    gzip on;

    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types       text/plain application/x-javascript text/css application/xml;
    gzip_vary on;
 
Nginx 日志格式
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                '$upstream_addr $upstream_response_time $request_time '          
                '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
http_x_forwarded_for 取用户访问IP可用这个字段,在request Header里取到,但后面又做了配置,要以remote到可取
开始日志
access_log  /opt/logs/whm_access.log  main;
这时我用到了Nginx的重定向,把用户访问不带3W(www)的域名全转到带3W的,便于统计,以及申请QQ Auth认证使用
server_name  localhost,www.whohelpme.com,whohelpme.com;
        access_log  /opt/logs/whm_access.log  main;
        if ( $host = 'whohelpme.com' ){
                rewrite ^/(.*)$ http://www.whohelpme.com/$1 permanent;
        }
核心配置
Tomcat和的9000端口,这边需要把所有请求转发到9000,
 proxy_set_header X-Real-IP $remote_addr;这一句就是把用户的真实IP透传到应用层使用
location ~ .* {
                proxy_pass http://127.0.0.1:9000;
                proxy_set_header X-Real-IP $remote_addr;
        }
 
下面付上全部配置
http {
    include       mime.types;
    default_type  application/octet-stream;
 
    include       proxy.conf;
    log_format yundns_log '$server_name $remote_addr [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_a
gent"';
    #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  logs/access.log  main;
 
    server_tokens off;
    sendfile        on;
    tcp_nopush     on;
    server_names_hash_bucket_size 256;
    client_header_buffer_size 256k;
    #large_client_header_buffers 4 32k;
 
    large_client_header_buffers 4 256k;
    client_body_buffer_size 256k;
    client_header_timeout     3m;
    client_body_timeout 3m;
    send_timeout             3m;
 
    client_max_body_size 50m;
    keepalive_timeout  120;
    fastcgi_intercept_errors on;
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
    #fastcgi_buffer_size 64k;
    #fastcgi_buffers 8 64k;
    #fastcgi_busy_buffers_size 128k;
    #fastcgi_temp_file_write_size 128k;
 
    fastcgi_buffer_size 128k;
    fastcgi_buffers 4 256k;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
 
    gzip on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types       text/plain application/x-javascript text/css application/xml;
    gzip_vary on;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                '$upstream_addr $upstream_response_time $request_time '          
                '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
 
    server {
        listen       80 default_server;
        server_name  localhost,www.whohelpme.com,whohelpme.com;
        access_log  /opt/logs/whm_access.log  main;
        if ( $host = 'whohelpme.com' ){
                rewrite ^/(.*)$ http://www.whohelpme.com/$1 permanent;
        }
 
        index index.jsp index.html;
        root /home/default;
        location ~ .* {
                proxy_pass http://127.0.0.1:9000;
                proxy_set_header X-Real-IP $remote_addr;
        }
        #location / {
        #    root   html;
        #    index  index.html index.htm;
        #}
 
        #error_page  404              /404.html;
 
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
 
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}
 
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}
 
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }
}
Nginx Rewrite 实战指南:URL重写、重定向与条件路由详解 Nginx Rewrite 是 Web 服务器层实现 URL 重写与请求调度的核心机制,基于 PCRE 正则引擎,在 rewrite 阶段修改请求 URI 或触发 HTTP 重定向,直接影响前端 SPA 刷新兼容性、API 版本迁移、SEO 友好链接等关键场景。其技术价值在于不依赖应用层即可完成流量分发、路径标准化与客户端跳转,兼具高性能与低侵入性。典型应用包括单页应用 history 模式兜底、301/302 地址跳转、移动端路径适配及参数清洗。本文聚焦 Nginx Rewrite 的真实配置逻辑、fla 阅读详情

相关推荐

Nginx架构及配置详解

概述 Nginx采用C进行编写,是俄罗斯程序员开发的一款轻量级的可构建Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器的软件, Nginx服务器是一个高性能的HTTP和反向代理web服务器,同时也可提供了IMAP/POP3/SMTP服务。nginx常用作跑静态和做负载反向代理,动态php交给apache处理,因后者比较稳定,jsp交给tomcat、resin或jboss。n......

企业实战系列集 ●●● https://ximenjianxue.blog.youkuaiyun.com 7071

Nginx配置中的log_format(设置详细的日志格式)

一般是运维工作人员负责Nginx日志管理。 观察nginx的server段,可以看到如下的信息:access_log logs/host.access.log main; 这说明该server,它的访问日志的文件是 logs/host.access.log,使用的格式是 main 格式。其中,main格式见下面: 注解:除了 main 格式,也可以自定义格式。 Q:main格式是什么? A...

JaweG 3059

Nginx重定向实战:301/302语义、rewrite阶段与return精准控制

HTTP重定向是Web基础设施中最基础也最易误用的机制之一,其核心在于状态码语义(如301永久跳转与302临时跳转)、浏览器缓存行为及服务端执行时机的协同。Nginx作为主流反向代理与边缘网关,通过return、rewrite和proxy_redirect等指令实现跳转控制,但不同指令触发于请求处理的不同阶段——return立即终止流程,rewrite则受location匹配与重写阶段影响,极易引发循环或失效。理解301对SEO权重迁移的影响、302对调试友好性的作用,以及rewrite的post-rewr

weixin_34185320的博客 418

nginx 代理ssh

events { worker_connections 1024; } stream { #stream模块,就跟http模块一样 upstream ssh { server 127.0.0.1:22; } server { #里面可以有多个监听服务,配置监听端口和代理的ip和端口就可以进...

weixin_33725270的博客 1518

Nginx proxy_pass配置详解与实战技巧

反向代理是现代Web架构中的核心技术,通过中间服务器转发客户端请求到后端服务,实现负载均衡、安全防护和流量管理。Nginx作为高性能的反向代理服务器,其proxy_pass指令是实现请求转发的核心机制。该指令通过URI重写、连接管理和Header处理等底层操作,支持从简单端口转发到复杂微服务路由等多种场景。在生产环境中,合理的proxy_pass配置能显著提升系统性能,常见的应用场景包括API网关构建、静态资源缓存、WebSocket代理等。针对502错误、URI改写异常等典型问题,需要结合健康检查、缓冲区

weixin_34174422的博客 563

Nginx路径转发原理与实战:从location匹配到微服务网关配置

反向代理是Web服务器架构中的核心概念,它通过接收客户端请求并转发给后端服务器,实现负载均衡、安全隔离和请求路由。其工作原理基于HTTP协议处理,通过修改请求头与URI路径,将流量定向到不同应用服务。这一技术在提升系统可扩展性和维护性方面具有重要价值,广泛应用于前后端分离、微服务架构和API网关等场景。在实际工程实践中,Nginx的location匹配规则与proxy_pass指令的路径处理机制是实现高效转发的关键,尤其涉及正则表达式优先级和URI重写时,需深入理解其内部处理阶段。本文结合企业级部署案例,详

weixin_34377919的博客 404

代理proxy获取客户端真实IP

关于代理如何获取客户端真实IP的配置: http://www.example.com/static/index.htmldev开发环境举例:www.example.com(代理)–>proxy.example.com(代理) –> proxy.data.example.com默认获取客户端IP地址的变量: $remote_addrclient_ip: 10.19.136.119 --> www_ip

******* ▄︻┻┳═一 ******* 9331

机器人强化学习入门学习笔记

如果你追求高精度动力学仿真、用于强化学习或机器人研究,MuJoCo 是一个非常优秀的选择。如果需要快速实验、使用真实机器人模型,PyBullet 或 Gazebo可能更合适;如果你追求大规模并行训练,Isaac Gym 或 BraX会更高效。legged gym底层是​编辑isaacgym,基于gpu训练可以多环境并行训练,收敛到一个稳定行走的策略快。本视频MuJoCo基于cpu训练很慢。

xiaomu_347的博客 1469

nginx反向代理打印日志_nginx启用TCP反向代理日志配置

Nginx使用TCP反向代理日志配置不同于http修改nginx配置文档/usr/local/nginx/conf/nginx.conf 设置日志格式stream {log_format proxy ‘$remote_addr [$time_local] ‘‘$protocol $status $bytes_sent $bytes_received ‘‘$session_time "$upstre...

weixin_39800387的博客 1761

TI IWR 6843 ISK 毫米波雷达开箱测试

TI IWR6843 ISK毫米波雷达上手体验,教程十分详细,对于新手很友好。

qq_57061492的博客 4035

SEW MDX61B 变频器调试说明

可手动自由更改时间和地址,时间一般不更改,IP地址使用网络适配器地址(Network adapter),点击进入即可。进入网络适配器(Network adapter)后,选择适配器建议地址,点击OK,更改IP地址后点击OK。点击加载配置文件(Load a configuration),加载已保存的应用模块配置文件, 或者点击“next”,开始重新配置AMA0801模块。满足安全回路后,控制模式选为寻参模式(Reference mode),选中开始(start),即可将机械零点设置为电气零点。

xdpcxq的专栏 4307

四层负载均衡

什么是四层负载均衡 基于传输层的负载均衡,协议包来封装的是(TCP/IP)。 四层负载均衡的应用场景 实现端口转发,ssh、mysql等都是tcp协议请求,只能用tcp方式连接的服务,我们就可以使用四层负载均衡来调度。 四层结合七层实现大规模集群架构 原因: 七层负载均衡能够接受的连接数有限,需要配置多台七层负载均衡 问题:多台七层如何实现轮询? 解决:在多台七层负载均衡前面接入四层负载均衡。 ...

zwj1834787的博客 1041

Silvaco TCAD 2018安装后,如何配置TonyPlot 5.0.22.R并解决绘图报错?

本文详细介绍了在Windows系统上安装Silvaco TCAD 2018后,如何正确配置TonyPlot 5.0.22.R并解决常见的绘图报错问题。内容包括版本兼容性分析、环境变量设置、常见错误解决方案以及性能优化建议,帮助用户顺利完成仿真结果的可视化工作。

weixin_31031711的博客 422

全网最强Nginx教程 | 万字长文爆肝Nginx(三)

文章摘要 本文详细介绍了Nginx服务器的Rewrite功能配置。Rewrite是Web服务器的重要功能,用于实现URL重写,依赖于PCRE库和ngx_http_rewrite_module模块。文章讲解了Rewrite的常用指令(set、if、break、return、rewrite等)及其语法,并列举了Rewrite的应用场景如域名跳转、防盗链等。同时介绍了常用的全局变量如$args、$host、$request_method等,以及它们在日志记录中的使用方法。通过条件判断和正则表达式匹配,可以灵活控制

qq_45832461的博客 1106

双目视觉实战:用Bouguet算法实现极线校正的完整代码解析

本文详细解析了Bouguet算法在双目视觉极线校正中的完整实现流程与性能调优技巧。通过旋转平分策略和基线对齐,Bouguet方法显著降低图像畸变并提升匹配精度,相比传统Hartley校正法平均重投影误差降低53%。文章涵盖从相机标定到OpenCV实战的全过程,并分享工业级调参策略,帮助开发者实现高精度立体视觉系统。

f9g0h的博客 267

Arcgis使用NDVI值遥感反演叶面积指数(LAI)

经验模型反演操作不难,主要是要多看文献,了解公式。本文中的公式我也不清楚是哪个作物的NDVI和LAI的关系(别人提供的),继续看文献整理吧。后续会在下面罗列更新一下主要公式。

所有专家都曾始于新手 8430

Nginx proxy_pass 配置详解与最佳实践

反向代理是Web架构中的核心组件,通过中间服务器转发客户端请求到后端服务。Nginx作为高性能反向代理服务器,其proxy_pass指令的配置直接影响请求路由、负载均衡等关键功能。从技术原理看,proxy_pass通过URI重写、请求头处理和连接池管理等机制,实现高效可靠的请求转发。在工程实践中,合理配置proxy_pass能解决WebSocket代理、路径重写、多环境路由等常见场景需求,同时需要注意斜杠处理、变量使用等细节以避免常见陷阱。结合负载均衡upstream模块和keepalive优化,可显著提升

weixin_34267123的博客 339

windows下宝塔安装教程

windows下宝塔安装教程 目录宝塔是什么?宝塔安装流程1.下载2.配置3.登录4.安装的环境套件小结 宝塔是什么? 宝塔是管理服务器的免费的软件,宝塔上面可以进行对你的服务器批量进行管理,对于运维人员来说还是必不可少的一个软件,值得使用。 宝塔安装流程 1.下载 链接: https://download.bt.cn/win/panel/BtSoft.zip 下载后安装买最好自定义目录,方便找 2.配置 下载完成后会出现这个页面,对着页面进行配置 点击默认密码复制进来,这里注意一点就是一定要查看

你在看屏幕的同时,屏幕也在注视着你 4423

Nginx proxy_pass指令详解与实战配置指南

反向代理是现代Web架构中的核心技术,通过中间服务器转发客户端请求到后端服务,实现负载均衡、安全隔离等能力。Nginx作为高性能Web服务器,其proxy_pass指令是反向代理的核心实现,支持HTTP/HTTPS、FastCGI等多种协议代理。理解proxy_pass的工作原理和配置细节对构建高可用服务至关重要,特别是在微服务架构和容器化部署场景下。本文深入解析proxy_pass的语法规则、路径重写技巧和性能优化方法,涵盖负载均衡配置、WebSocket代理等实战案例,帮助开发者掌握这一关键技术的工程实

virusswb的专栏 325

【AI 赋能:Python 人工智能应用实战】16. BERT微调实战:中文新闻分类全流程(附模型蒸馏+ONNX部署完整代码)

中文新闻分类是NLP领域的经典实用任务,BERT模型凭借双向上下文建模能力,能有效解决中文歧义与长文本依赖问题,但存在推理速度慢、资源占用高的痛点。本文以THUCNews中文新闻数据集为核心,提供从数据预处理、BERT微调、模型蒸馏到生产部署的全流程实操指南。首先详解THUCNews的多编码读取与清洗(解决gbk/utf-8兼容问题);然后实现BERT微调,加入早停机制与混淆矩阵可视化,验证准确率达93.8%;接着用DistilBERT完成模型蒸馏,在仅损失0.6%准确率的前提下,将推理速度提升2.7倍。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1098

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

nginx日志配置

nginx access日志配置 access_log日志配置 access_log用来定义日志级别,日志位置。语法如下: 日志级别: debug > info > notice > warn > error > crit > alert > emerg 语法格式: access_log path [format [buffer=size] [gzip...

qq_17199495的博客 1084

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Nginx配置以及域名转发

工程中的nginx配置 #user nobody; worker_processes 24; error_log /home/xxx/opt/nginx/logs/error.log; pid /home/xxx/opt/nginx/run/nginx.pid; events { use epoll; worker_connections 102...

胡峻峥的博客 1254

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Ubuntu 20.04下Nginx与Apache共存配置实战

Web服务器架构中,Nginx和Apache并非互斥选项,而是可协同工作的互补组件。Nginx基于事件驱动的异步非阻塞I/O模型,擅长高并发静态资源服务、SSL终止与反向代理;Apache则在动态内容处理(如PHP/Perl模块化运行)、.htaccess重写及安全模块(mod_security)方面具备成熟生态。二者混合部署能兼顾性能与兼容性,尤其适用于遗留系统升级、多租户平台演进等生产场景。其技术价值体现在:卸载静态压力、复用现有配置、统一安全策略与流量治理。典型应用包括电商大促架构、政务系统平滑迁移及

weixin_34146805的博客 1470

nginx 配置实例

user nginx; worker_processes 4; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc...

weixin_30877755的博客 120
上一篇: linux 安装 ssh
下一篇: 网站推广技巧之单向链接推广
javaiswhat
博客等级 码龄19年 20粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值