iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >超实用 nginx 中常见的配置合集
  • 201
分享到

超实用 nginx 中常见的配置合集

nginx服务器运维经验分享原力计划 2023-09-04 13:09:07 201人浏览 薄情痞子
摘要

✨ 目录 🎈 封禁 IP🎈 仅开放内网🎈 负载均衡🎈 列出文件列表🎈 路由转发🎈 开启

✨ 目录

🎈 封禁 IP

  • 通过 deny 可以封禁指定 IP
Http {# ....# 封禁IPdeny 192.168.4.3; deny 31.42.145.0/24; deny 51.12.35.0/24;}

🎈 仅开放内网

  • 需要先禁止 192.168.1.1
  • 开放其他内网网段,然后禁止其他所有 IP
location / {   # block one workstation   deny    192.168.1.1;   # allow anyone in 192.168.1.0/24   allow   192.168.1.0/24;   # drop rest of the world   deny    all; }

🎈 负载均衡

  • 需要在 Nginx.conf 中配置转发服务器信息
  • 权重: weight=1,权重如果分配的值越大,权重越高
  • 最大连接数: max_fails=3,最多连接失败次数为3次
  • 连接失败时间: fail_timeout=20s,每次连接失败的时间
  • 在站点配置 default.conf 中开启负载均衡
# nginx.conf中配置转发服务器信息upstream WEB {    server 192.168.37.2 weight=1 max_fails=3 fail_timeout=20s;    server 192.168.37.3 weight=1 max_fails=3 fail_timeout=20s;}# default.conf中开启负载均衡location / {    proxy_pass http://web/;}

🎈 列出文件列表

  • 有时候服务器作为资源服务器,给用户提供下载资源使用
  • 需要将服务上的文件以目录形式列出来
  • 可以通过配置 autoindex on 允许列出目录,启用目录流量
  • 可以通过 autoindex_exact_size off 显示出文件的确切大小,单位是 bytes
  • 可以通过 autoindex_localtime on 显示的文件时间为文件的服务器时间
location / {    autoindex on;    autoindex_exact_size on;    autoindex_localtime on;}

🎈 路由转发

  • 有时候用户通过路由访问服务器的资源,其实你的资源在另一个文件夹下面
  • 可以使用 alias 命令,将用户请求进行转发
# nginx服务器location /static {    alias /public;} # window服务器location ^~ /static {    alias "D:\\public\\静态资源";}

🎈 开启 gzip 压缩

  • gzip 压缩是一种提升访问速度的优化方向,可以大大提高访问速度
http {    # 开启gzip    gzip on;    # 是否在http header中添加Vary: Accept-Encoding,建议开启    gzip_vary on;    # 启用gzip压缩的最小文件,小于设置值的文件将不会压缩    gzip_min_length 1k;    gzip_proxied any;    # gzip 压缩级别,1-9,数字越大压缩的越好,也越占用CPU时间    gzip_comp_level 6;    # 设置压缩所需要的缓冲区大小    gzip_buffers 16 8k;    # 设置gzip的版本    gzip_http_version 1.1;    # 进行压缩的文件类型。javascript有多种形式,后面的图片压缩不需要的可以自行删除    gzip_types text/plain text/CSS application/JSON application/javascript text/xml application/xml application/xml+rss text/javascript;}

🎈 解决跨域

server {location / {#允许跨域请求的域,*代表所有 add_header 'Access-Control-Allow-Origin' *; #允许带上cookie请求 add_header 'Access-Control-Allow-Credentials' 'true'; #允许请求的方法,比如 GET / POST / PUT / DELETE add_header 'Access-Control-Allow-Methods' *; #允许请求的header add_header 'Access-Control-Allow-Headers' *;}}

🎈 资源防盗链

  • 为了防止其他网站直接实用我方的静态资源,可以增加防盗链配置
server {location ~*/(js|image|css) {    # 检测*.autofelix.cn的请求,如果检测是无效的,直接返回403        valid_referers *.autofelix.cn;         if ($invalid_referer) {        return 403;        }     }}

🎈 Keepalived 提高吞吐量

  • 通过 keepalived 可以设置长连接处理的数量
  • 通过 proxy_http_version 可以设置长连接 http 版本
  • 通过 proxy_set_header 可以清除 connection header 信息
# nginx.conf中配置吞吐量upstream web {    server 192.168.37.3 weight=1;keepalive 32;}# default.conf中配置location / {     proxy_pass http://Tomcats;     proxy_http_version 1.1;     proxy_set_header Connection "";}

🎈 HTTP 强制跳转 https

  • 很多网站中,都强制使用 https 协议
  • 这样我们就需要将 http 强制跳转到 https
server {    # 监听的端口号    listen 80;        # 强制跳转    rewrite ^(.*)$ https://$host$1 permanent;} server {    # 监听的端口号    listen       443;    # 主机名    server_name www.520web.cn;    # 开启ssl验证    ssl on;    # 字符集    charset utf-8;    # 访问的根目录    root   /var/www/html;    # 错误页面    error_page  404    ...404文件路径;        # 图片视频静态资源缓存到客户端时间    location ~ .*\.(jpg|jpeg|gif|png|ico|mp3|mp4|swf|flv){      expires 10d;    }        # js/css静态资源缓存到客户端时间    location ~ .*\.(js|css){      expires 5d;    }        # ssl的相关配置,pem文件的地址    ssl_certificate  ...pem文件的绝对路径;    # key文件的绝对路径    ssl_certificate_key  ...key文件的绝对路径;    # 断开重连时间    ssl_session_timeout 5m;    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;    # ssl协议    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    ssl_prefer_server_ciphers on;        # 首页访问的文件    location / {        index  index.PHP index.html index.htm;    }    # php-ftm配置    location ~ \.php$ {        fastcgi_pass   127.0.0.1:9000;        fastcgi_index  index.php;        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;        include        fastcgi_params;    }}

来源地址:https://blog.csdn.net/weixin_41635750/article/details/125857045

--结束END--

本文标题: 超实用 nginx 中常见的配置合集

本文链接: https://www.lsjlt.com/news/393600.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 超实用 nginx 中常见的配置合集
    ✨ 目录 🎈 封禁 IP🎈 仅开放内网🎈 负载均衡🎈 列出文件列表🎈 路由转发🎈 开启...
    99+
    2023-09-04
    nginx 服务器 运维 经验分享 原力计划
  • 超实用的Nginx常见配置合集分享
    目录封禁 IP仅开放内网负载均衡列出文件列表路由转发开启 gzip 压缩解决跨域资源防盗链Keepalived 提高吞吐量HTTP 强制跳转 HTTPS封禁 IP 通过 deny 可...
    99+
    2024-04-02
  • Nginx 中常见 header 配置及修改
    在 nginx 中,经常需要因为各种原因,修改 header,所以今天整理下 nginx 中 header 的一些指令 header 是 http 中的消息头,里面包含很多信息,通常又分为 request headers(请求头)和 res...
    99+
    2023-08-31
    nginx php 服务器
  • 超全!Python中常见的配置文件写法
    为什么要写配置文件这个固定文件我们可以直接写成一个 .py 文件,例如 settings.py 或 config.py,这样的好处就是能够在同一工程下直接通过 import 来导入当中的部分;但如果我们需要在其他非 Python 的平台进行...
    99+
    2023-05-14
    Python 配置文件
  • 超全!Python 中常见的配置文件写法
    为什么要写配置文件在开发过程中,我们常常会用到一些固定参数或者是常量。对于这些较为固定且常用到的部分,往往会将其写到一个固定文件中,避免在不同的模块代码中重复出现从而保持核心代码整洁。这个固定文件我们可以直接写成一个 .py 文件,例如 s...
    99+
    2023-05-14
    Python 配置文件
  • Java中数组的常见操作合集
    目录数组的常见操作数组越界异常数组空指针异常数组遍历数组获取最大值元素数组反转数组作为方法参数和返回值数组作为方法参数数组作为方法返回值数组的常见操作 数组越界异常 public s...
    99+
    2024-04-02
  • Laravel与Vue Nginx配置的常见问题如何解决
    这篇文章主要讲解了“Laravel与Vue Nginx配置的常见问题如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Laravel与Vue Nginx配置的常见问题如何解决”吧!Lar...
    99+
    2023-07-04
  • Nginx常用的基础配置方案
    本篇内容主要讲解“Nginx常用的基础配置方案”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx常用的基础配置方案”吧!Nginx的fastcgi模块参数设置Nginx 有两个配置文件fa...
    99+
    2023-06-04
  • Nginx的一些常用配置汇总
    目录Nginx配置文件结构Nginx日志切割root 与 alias使用GZIP压缩提升请求效率location匹配规则解析使用SwitchHosts模拟本地域名解析Nginx跨域配...
    99+
    2024-04-02
  • python中的集合及集合常用的使用方法
    目录python中的集合什么是集合?集合与列表的区别创建空集合通过集合给列表去重集合的增删改集合的add函数集合的update函数集合的remove函数集合的clear函数集合的de...
    99+
    2024-04-02
  • Nginx各个模块的配置及常用配置选项
    目录Nginx Location配置请求转发和重定向Nginx静态文件配置文件下载服务器Nginx配置HTTPSNginx日志配置Nginx超时设置请求超时设置Proxy反向代理超时...
    99+
    2024-04-02
  • Nginx的几个常用配置和技巧
    文章列举了几个Nginx常见的,实用的,有趣的配置,希望看过之后能说一句:学到了!一个站点配置多个域名server {    listen    &n...
    99+
    2023-06-03
  • Springboot集成Swagger2以及常见配置的过程是怎样的
    本篇文章给大家分享的是有关Springboot集成Swagger2以及常见配置的过程是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。&n...
    99+
    2024-04-02
  • C#中常见的并发集合和线程安全问题
    C#中常见的并发集合和线程安全问题在C#编程中,处理并发操作是非常常见的需求。当多个线程同时访问和修改同一数据时,就会出现线程安全问题。为了解决这个问题,C#提供了一些并发集合和线程安全的机制。本文将介绍C#中常见的并发集合以及如何处理线程...
    99+
    2023-10-22
    集合 并发 线程安全
  • java中的常用集合类整理
    目录Collection接口集合的遍历:iterator 接口集合的遍历:增强for循环List接口ArrayListSet接口Map接口HashMapLinkedHashMapTr...
    99+
    2024-04-02
  • Java 并发集合中常见的问题与解决方案
    1. 集合修改异常 集合修改异常是指在对集合进行迭代时,集合的内容被修改,导致迭代器失效。这种异常通常发生在多线程环境中,当一个线程正在迭代集合时,另一个线程修改了集合的内容。 解决方案: 使用并发集合:Java 提供了多种并发集合,...
    99+
    2024-02-07
    Java 并发集合 集合修改异常 线程安全 性能 序列化
  • Python中有哪些常见的配置文件
    这篇文章将为大家详细讲解有关Python中有哪些常见的配置文件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 为什么要写配置文件在开发过程中,我们常常会用到一些固定参数或者是常量。...
    99+
    2023-06-15
  • nginx常用配置conf的示例代码详解
    nginx常用配置conf 代理静态文件 # 静态文件 server { # 压缩问价你配置 gzip on; gzip_min_length 1k; ...
    99+
    2024-04-02
  • Python数据类型在常见集合中的语法有哪些
    这篇文章将为大家详细讲解有关Python数据类型在常见集合中的语法有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Python数据类型中的set和C#中的集合(collection)不是...
    99+
    2023-06-17
  • JAVA集合框架中的常用集合及其特点和实现原理简介
    本篇内容介绍了“JAVA集合框架中的常用集合及其特点和实现原理简介”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Java提供的众多集合类由两...
    99+
    2023-06-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作