关于Nginx动静分离详解以及配置

关于Nginx动静分离的详解以及配置

一、什么是动静分离
动静分离是将应用程序(网站)中的动态页面与静态页面分离放置于不同的服务器上进行更好地服务。动态页面表示每次访问均会进行业务逻辑处理的页面例如登录、提交表单等,静态页面表示所有用户访问的信息都是固定的,如CSS样式表和JS脚本文件等。将动态与静态页面分离,可以有效降低服务器的负载,并提高网站的响应速度。

二、动静分离的实现方式
1. 通过DNS解析,指向不同的服务器
2. 通过Nginx 配置动静分离(列举本文的实现方式)

三、配置Nginx 实现动静分离
示例一:将www.abc.com/path下的静态内容指向静态资源服务器,同时动态页面和其他请求均指向应用服务器

http {
     upstream backend {
         server 127.0.0.1:8080;
         server 127.0.0.1:8081;
     }
     upstream static {
         server 192.168.0.12:80;
     }
     server {
         listen 80;
         server_name www.abc.com;
         location /path/ {
             proxy_pass http://static;
         }
         location / {
             proxy_pass http://backend;
         }
     }
}

示例二:将不同类型的静态内容指向不同的静态资源服务器,例如将图片(png、jpg等)资源指向img服务器,将静态文件(css、js等)指向static服务器

http {
    upstream dynamic {
        server 127.0.0.1:8080;
        server 127.0.0.1:8081;
    }
    upstream static_img {
        server 192.168.0.12:80;
    }
    upstream static_css_js {
        server 192.168.0.13:80;
    }
    server {
        listen 80;
        server_name www.abc.com;

        # 将图片文件指向static_img
        location ~ .*\.(gif|jpg|jpeg|png)$ {
            proxy_pass http://static_img;
        }

        # 将CSS、JS文件指向static_css_js
        location ~ .*\.(css|js)$ {
            proxy_pass http://static_css_js;
        }

        # 其他请求均指向应用服务器
        location / {
            proxy_pass http://dynamic;
        }
    }
}

以上就是关于nginx动静分离的详细说明和两条示例,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:关于Nginx动静分离详解以及配置 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • Nginx设置成服务并开机自动启动的配置

    将Nginx设置成服务 步骤一:创建Nginx服务文件在/etc/systemd/system目录下创建一个新的Nginx服务文件nginx.service,内容如下: [Unit] Description=nginx service After=network.target [Service] Type=forking PIDFile=/run/nginx…

    Nginx 2023年5月16日
    00
  • 在Ubuntu下编译安装nginx

    一、安装nginx 1、安装前提 a)epoll,linux内核版本为2.6或者以上 b)gcc编译器,g++编译器 c)pcre库,函数库,支持解析正则表达式 d)zlib库:压缩解压功能 e)openssl库:ssl功能相关库,用于网站加密通讯   2、nginx源码下载以及目录结构简单认识 nginx官网:http:www.nginx.org ngin…

    Nginx 2023年4月16日
    00
  • 用Docker实现nginx多端口

    一.安装docker 需要阿里的epel源,需要联网 [root@bogon ~]#yum -y install docker [root@bogon ~]#systemctl start docker [root@bogon ~]#systemctl enable docker   下载httpd镜像 Docker pull http:2.4.27-alp…

    Nginx 2023年4月16日
    00
  • Nginx的平滑重启和平滑升级

    一,Nginx的平滑重启如果改变了Nginx的配置文件(nginx.conf),想重启Nginx,可以发送系统信号给Nginx主进程的方式来进行。在重启之前,要确认Nginx配置文件的语法是正确的。 测试配置文件是否正确:/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf如果配…

    Nginx 2023年4月11日
    00
  • nginx跨域配置(windos走过的坑)

    nginx下载地址: http://nginx.org/en/download.html 红圈区域是稳定版 解压之后放在文件夹就可以了。 解压后:  注意:这里面有个nginx.exe文件,一般情况下双击运行就可以了,但是由于windos部分机型他不支持日志填写,运行后可能无法关闭。建议cmd命令行执行,这样一定会填写日志。 执行命令最重要的三个:(其他关于…

    Nginx 2023年4月11日
    00
  • nginx中域名、目录的301重定向配置示例

    下面我来详细讲解如何在nginx中配置域名和目录的301重定向。 示例一:域名重定向配置 步骤一:配置域名解析 首先,需要在DNS解析中将需要重定向的域名解析到服务器的IP地址上,例如将原始域名example.com解析到服务器IP地址为192.168.1.1的服务器上。 步骤二:配置nginx监听端口 在nginx的配置文件中,将需要进行重定向的域名和对应…

    Nginx 2023年5月16日
    00
  • nginx 基本入门教程

    nginx是一个基于事件驱动的轻量级Web服务器,同时也是一个反向代理服务器、负载均衡服务器和HTTP缓存服务器。以下是nginx基本入门教程的完整攻略: 1. 安装nginx Ubuntu系统安装 在Ubuntu系统上安装最简单的方法是使用apt包管理器。 打开终端并执行以下命令: sudo apt update sudo apt install ngin…

    Nginx 2023年5月16日
    00
  • Nginx实现Nacos反向代理的项目实践

    下面是详细讲解Nginx实现Nacos反向代理的项目实践的完整攻略。 1. 背景 Nacos是阿里巴巴推出的一款注册中心和配置中心,可以作为微服务架构中的基础设施之一。在使用Nacos时,为了保证服务的高可用性和可扩展性,我们通常需要使用多个Nacos节点部署在不同的服务器上,而客户端则需要通过负载均衡的方式访问Nacos节点集群。 Nginx是一款高性能的…

    Nginx 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部