nginx常用常忘的配置方法

参考网址

具体应用

location /images/ {
    root /opt/html/;
    try_files $uri   $uri/  /images/default.gif;
}

比如 请求 127.0.0.1/images/test.gif 会依次查找
1.文件/opt/html/images/test.gif
2.文件夹 /opt/html/images/test.gif/下的index文件
3. 请求127.0.0.1/images/default.gif

rewrite

关键字:其中关键字error_log不能改变
正则:perl兼容正则表达式语句进行规则匹配
替代内容:将正则匹配的内容替换成replacement
flag标记:rewrite支持的flag标记

flag标记说明:
last #本条规则匹配完成后,继续向下匹配新的location URI规则
break #本条规则匹配完成即终止,不再匹配后面的任何规则
redirect #返回302临时重定向,浏览器地址会显示跳转后的URL地址
permanent #返回301永久重定向,浏览器地址栏会显示跳转后的URL地址

server {
        listen 80;
        server_name abc.com;
        rewrite ^/(.*) http://www.abc.com/$1 permanent;
}

变量名 定义 $arg_PARAMETER GET请求中变量名PARAMETER参数的值 $args 这个变量等于GET请求中的参数。例如,foo=123&bar=blahblah;这个变量只可以被修改 $binary_remote_addr 二进制码形式的客户端地址。 $body_bytes_sent 传送页面的字节数 $content_length 请求头中的Content-length字段。 $content_type 请求头中的Content-Type字段。 $cookie_COOKIE cookie COOKIE的值。 $document_root 当前请求在root指令中指定的值。

uri相同。 $host 请求中的主机头(Host)字段,如果请求中的主机头不可用或者空,则为处理请求的server名称(处理请求的server的server_name指令的值)。值为小写,不包含端口。 $hostname 机器名使用 gethostname系统调用的值

http_user_agent(Uaer-Agent的值); $sent_http_HEADER|HTTP响应头中的内容,HEADER为HTTP响应中的内容转为小写,-变为_(破折号变为下划线),例如: $sent_http_cache_control, $sent_http_content_type…;

args设置,值为”?”,否则为””。 $limit_rate 这个变量可以限制连接速率。 $nginx_version 当前运行的nginx版本号。

args相同。 $remote_addr 客户端的IP地址。 $remote_port 客户端的端口。 $remote_user 已经经过Auth Basic Module验证的用户名。 $request_filename 当前连接请求的文件路径,由root或alias指令与URI请求生成。 $request_body 这个变量(0.7.58+)包含请求的主要信息。在使用proxy_pass或fastcgi_pass指令的location中比较有意义。 $request_body_file 客户端请求主体信息的临时文件名。 $request_completion 如果请求成功,设为”OK”;如果请求未完成或者不是一系列请求中最后一部分则设为空。 $request_method 这个变量是客户端请求的动作,通常为GET或POST。包括0.8.20及之前的版本中,这个变量总为main request中的动作,如果当前请求是一个子请求,并不使用这个当前请求的动作。

uri更改或重写URI。

$scheme://example.com$1 redirect; $server_addr 服务器地址,在完成一次系统调用后可以确定这个值,如果要绕开系统调用,则必须在listen中指定地址并且使用bind参数。 $server_name 服务器名称。 $server_port 请求到达服务器的端口号。 $server_protocol 请求使用的协议,通常是HTTP/1.0或HTTP/1.1。 $uri 请求中的当前URI(不带请求参数,参数位于args,不同于浏览器传递的args),不同于浏览器传递的request_uri的值,它可以通过内部重定向,或者使用index指令进行修改。不包括协议和主机名,例如/foo/bar.html

location /ip {
    default_type application/json;
    add_header Access-Control-Allow-Credentials true;
    add_header Access-Control-Allow-Origin *;
    add_header Cache-Control public;
    add_header Cache-Control max-age=300;
    return 200 '{"code":$status,"ip":"$remote_addr","User-Agent":"$http_user_agent"}';
}

Original: https://www.cnblogs.com/bugutian/p/15433374.html
Author: 步孤天
Title: nginx常用常忘的配置方法

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/543591/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 理解IOC

    学习Spring,IOC是个绕不过去的话题。作为Spring的基础,IOC有太多博客和教程了。这里做个简单的梳理,以找工作为例,谈谈我对IOC的理解。 在经典的MVC架构这,一般会…

    Java 2023年6月5日
    093
  • Spring常用工具方法备忘录

    1:加载配置文件 Resource resource = new ClassPathResource("log4j.properties"); Properti…

    Java 2023年5月30日
    064
  • Docker入门

    一、简介 1.1、是什么 Docker是·基于GO语言实现的云开源项目Docker的主要目标是”Bulid,Ship and Run Any APP, Anywhere…

    Java 2023年6月9日
    074
  • 基于Redis实现延时队列服务

    背景 在业务发展过程中,会出现一些需要延时处理的场景,比如: a.订单下单之后超过30分钟用户未支付,需要取消订单b.订单一些评论,如果48h用户未对商家评论,系统会自动产生一条默…

    Java 2023年6月7日
    060
  • 不到 20 人的 IT 公司该去吗?

    来源:https://www.zhihu.com/question/421150601 群里经常有一些朋友问:一些初创的IT公司,一共几个人的配置,老板+1-2个前端+3-4个后端…

    Java 2023年6月15日
    0101
  • Java 异常的产生与如何处理异常

    异常的产生与如何处理异常 产生过程(示例) 处理过程 JVM在程序执行过程中检测出程序会发生异常(1) 首先,JVM根据异常产生的原因创建一个异常对象,这个异常对象包含异常产生的 …

    Java 2023年6月5日
    070
  • 22.线程自解锁

    代码结构比较复杂的情况下,手动加锁,解锁,可能会有所遗漏。 这种情况下,推荐使用自解锁(自解锁在构造的时候lock,在析构的时候unlock)(对象在超出作用域时会执行析构) 自解…

    Java 2023年5月29日
    070
  • Nginx做前端Proxy时TIME_WAIT过多的问题

    我们的DSP系统目前基本非凌晨时段的QPS都在10W以上,我们使用Golang来处理这些HTTP请求,Web服务器的前端用Nginx来做负载均衡,通过Nginx的proxy_pas…

    Java 2023年5月30日
    056
  • 老生常谈系列之Aop–JDK动态代理的底层实现原理

    老生常谈系列之Aop–JDK动态代理的底层实现原理 前言 在Aop系列里面有两篇文章,分别是老生常谈系列之Aop–Spring Aop原理浅析和老生常谈系列…

    Java 2023年6月8日
    083
  • ActiveMq 之JMS 看这一篇就够了

    什么是JMS MQ 全称:Java MessageService 中文:Java 消息服务。 JMS 是 Java 的一套 API 标准,最初的目的是为了使应用程序能够访问现有的 …

    Java 2023年6月7日
    069
  • 归并排序求解逆序对

    cpp;gutter:true;</p> <h1>include</h1> <h1>include</h1> <h…

    Java 2023年6月5日
    077
  • 附001.Nginx location语法规则

    一 location规则 基本语法: location [=|~|~*|^~]/uri/{…} 修饰符释义: 对请求的url序列化。例如,对%xx等字符进行解码,去除u…

    Java 2023年5月30日
    079
  • Halo 开源项目学习(一):项目启动

    项目简介 Halo 是一个优秀的开源博客发布应用,在 GitHub 上广受好评,正好最近在练习写博客,借此记录一下学习 Halo 的过程。 项目下载 前提设置 导入项目 因为 Ha…

    Java 2023年6月9日
    062
  • m

    mybatis-plus配置文件 在MybatisPlusInterceptor下添加DynamicTableNameInnerInterceptor @Configuration…

    Java 2023年5月30日
    0107
  • plugin.xml 解析说明

    plugin.xml文件定义插件所需的结构和设置 plugin主体 示例: 参数: 基础标签 示例: Camera Cordova Camera Plugin Apache 2.0…

    Java 2023年6月9日
    067
  • SQL执行顺序

    首先select语句中都会用到哪些关键字: select ,from,join,where,group by,having,order by,limit 其次,要知道每执行一步就会…

    Java 2023年6月9日
    091
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球