当前位置:首页 > 技术文章 > 正文内容

Nginx常用配置

arlanguage5个月前 (12-20)技术文章29

1、location匹配先后顺序

说明:
=   表示精确匹配,如果找到,立即停止搜索并立即处理此请求。
~   表示执行一个正则匹配,区分大小写匹配
~*   表示执行一个正则匹配,不区分大小写匹配
!~  区分大小写不匹配
!~*   不区分大小写不匹配
^~  即表示只匹配普通字符(空格)。使用前缀匹配,^表示“非”,即不查询正则表达式。如果匹配成功,则不再匹配其他location
/   表示通用匹配,任何请求都会匹配到

2、GZIP压缩

gzip on;    
gzip_min_length   1k;
gzip_buffers 8 32k;
gzip_comp_level 2;      # 指定gzip压缩比,1最小,9最大,压缩比越大越消耗CPU资源
gzip_http_version 1.1;  # 压缩版本默认是1.1
gzip_types text/plain text/css application/xml application/x-javascript application/javascript application/json;

3、 URL limit限速

主配置文件nginx.conf:
map $limited $limit {
       0 $binary_remote_addr;
       1 "";
}
limit_req_zone $limit zone=loginlimit:10m rate=10r/m;      #每6秒一个请求,比如:6r/m,每10秒放进来一个请求,按平均算
 
域名配置location:
location / {
     limit_req zone=loginlimit;
     proxy_pass http://xxxxxxxx.backend;
}

4、反向代理

upstream xxx_backend {
    server 172.168.100.11:8080;
    server 172.168.100.12:8080;
}

server {
    server_name xxx.example.com;

    location / {
       proxy_pass http://xxx_backend;
    }
}

5、正向代理

upstream xxx_backend {
    server 180.101.49.12:80;
}

server {
    server_name xxx.example.com;
    proxy_connect_timeout 90s;
    proxy_read_timeout 100s;
    proxy_send_timeout 90s;

    location / {
          proxy_set_header  Host  "www.baidu.com";
       proxy_pass http://xxx_backend;
    }
}

6、静态资源

server {
    server_name static.example.com;
    root /data/static.example.com/default/;   #nginx上静态资源对应存储路径
    try_files $uri $uri/ /index.html;
    index index.html index.htm index.jsp;
}

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/343.html

分享给朋友:

“Nginx常用配置” 的相关文章

nginx知识梳理及配置详解

nginx安装#nginx安装 yum -y install gcc pcre-devel openssl-devel #依赖包 useradd -s /sbin/nologin nginx ./configure --prefix=/usr/local/nginx #...

windows 搭建php运行环境(2024年)

由于需要运行一套cms系统,需要运行php环境,现在开始记录搭建步骤:1、分别下载nginx和php包,然后解压到自己喜欢目录下面2、这里我们使用nginx的反向代理模式的FastCGI server,修改nginx.conf,然后启动或重启nginx。location ~ \.php$ {...

nginx 解决 readv() failed (104: Connection reset by peer)

查看nginx error错误,发现上传接口报以下错:2019/10/10 19:58:25 [error] 299784#0: *5967188 readv() failed (104: Connection reset by peer) while reading upstream, clien...

Nginx 的日志 nginx的日志能否保存到日志审计里面?

Nginx 的日志主要有 2 个,一个是 access.log, 一个是 error.log。如果你不进行任何配置的话,这 2 个日志将会使用默认的日志配置,这个日志将会位于/var/log/nginx 目录中。针对虚拟主机的配置如果你使用了 Nginx 为虚拟主机的话。那么你可以在你的虚拟主机的配...

C# 实现高并发 Web 应用的性能优化秘籍

在现代的互联网应用中,尤其是大型 Web 应用,性能和可扩展性成为了核心竞争力。随着用户访问量和数据量的增大,高并发处理成为了系统稳定性和响应速度的关键因素。无论是电商平台、社交网站还是 SaaS 应用,如何应对海量用户的同时访问,确保系统高效运转,已经成为了技术人员面临的重要挑战。C# 和 ASP...

linux上将大文件切割成小文件之split命令

说明:很多场景需要拷贝或传输文件时,如果我们需要拷贝的文件太大的话,就需要想办法将其分成小个文件进行拷贝,然后载重新合并。今天介绍 split 命令格式:split [OPTION] [INPUT [PREFIX]]一、压缩并切割使用tar命令进行压缩,使用split进行切割实例:# 压缩 ]# t...