千家信息网

nginx怎样实现动静分离

发表于:2024-11-18 作者:千家信息网编辑
千家信息网最后更新 2024年11月18日,这篇文章将为大家详细讲解有关nginx怎样实现动静分离,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来
千家信息网最后更新 2024年11月18日nginx怎样实现动静分离

这篇文章将为大家详细讲解有关nginx怎样实现动静分离,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度。降低原 来单个服务器的压力。 简单来说,就是使用正则表达式匹配过滤,然后交个不同的服务器。

1、准备环境

准备一个nginx代理 两个http 分别处理动态和静态。

1.配置编译安装的nginx为反向代理upstream;

upstream static {server 10.0.105.196:80 weight=1 max_fails=1 fail_timeout=60s;}upstream php {server 10.0.105.200:80 weight=1 max_fails=1 fail_timeout=60s;}server {listen server_name#动态资源加载80;localhostlocation ~ \.(php|jsp)$ { proxy_pass http://phpserver;proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}#静态资源加载location ~ \.(html|jpg|png|css|js)$ { proxy_pass http://static; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}

静态资源配置---10.0.105.196

server {listen 80;server_name localhost;location ~ \.(html|jpg|png|js|css)$ { root /var/www/nginx;}}

上传图片

动态资源配置: 10.0.105.200

yum 安装php7.1

[root@nginx-server ~]#rpm -Uvh https://mirror.webtatic.com/yum/el7/epel- release.rpm

[root@nginx-server ~]#rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic- release.rpm

[root@nginx-server ~]#yum install php71w-xsl php71w php71w-ldap php71w-cli php71w-common php71w-devel php71w-gd php71w-pdo php71w-mysql php71w-mbstring php71w-bcmath php71w-mcrypt -y

[root@nginx-server ~]#yum install -y php71w-fpm [root@nginx-server ~]#systemctl start php-fpm [root@nginx-server ~]#systemctl enable php-fpm

编辑nginx的配置文件:

[root@nginx-server ~]# cd /etc/nginx/conf.d/ [root@nginx-server conf.d]# vim phpserver.conf server {

listen 80;

server_name localhost; location ~ \.php$ {

root /home/nginx/html; #指定网站目录

fastcgi_pass fastcgi_index fastcgi_param

#站点根目录,取决于root配置项

include

}

}

127.0.0.1:9000; #指定访问地址

index.php;

#指定默认文件

SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_params; #包含nginx常量定义

当访问静态页面的时候location 匹配到 (html|jpg|png|js|css) 通过转发到静态服务器,静态服务通过

location的正则匹配来处理请求。

当访问动态页面时location匹配到 .\php 结尾的文件转发到后端php服务处理请求。

知识点扩展:

通过请求分离

[root@lb01 conf]# vim nginx.confworker_processes 1;events {  worker_connections 1024;}http {  include    mime.types;  default_type application/octet-stream;  sendfile    on;  keepalive_timeout 65;upstream stack_pools {    server 172.25.254.134:80 weight=5;}upstream dynamic_pools {    server 172.25.254.135:80 weight=5;}  server {    listen    80;    server_name www.lbtest.com;    location / {      root  html;      index index.html index.htm;      proxy_set_header Host $host;      proxy_pass http://dynamic_pools;    }    location /image/ {      proxy_set_header Host $host;    proxy_pass http://stack_pools;    }    location /dynamic/ {      proxy_set_header Host $host;    proxy_pass http://dynamic_pools;    }  }}[root@lb01 conf]# nginx -s reload

根据扩展名分离

[root@lb01 conf]# vim nginx.conf worker_processes 1;events {  worker_connections 1024;}http {  include    mime.types;  default_type application/octet-stream;  sendfile    on;  keepalive_timeout 65;upstream stack_pools {    server 172.25.254.134:80 weight=5;}upstream dynamic_pools {    server 172.25.254.135:80 weight=5;}  server {    listen    80;    server_name www.lbtest.com;    location / {      root  html;      index index.html index.htm;      proxy_set_header Host $host;      proxy_pass http://dynamic_pools;    }    location ~ .*.(jpg|png|gif|css|js|swf|bmp|jsp|php|asp)$ {    proxy_set_header Host $host;    proxy_pass http://stack_pools;    }  }}[root@lb01 conf]# nginx -s reload

关于"nginx怎样实现动静分离"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

静态 服务 动态 配置 服务器 资源 页面 文件 篇文章 动静 不同 更多 正则 知识 网站 资源配置 速度 代理 准备 处理 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 西安网络安全培训前期不收费 批量修改数据库表引擎 关于加强网络安全的调研报告 计算机网络技术专业前景 软件开发年龄限制是多少 自己做游戏服务器要多少钱 云标签数据库没有数据 计算机网络技术脚本语言 服务器esc控制台 网络技术最高水平 软件开发外包的法律风险 台州市空间规划地理数据库 计算机网络技术的技能 英特尔服务器管理口账号密码 MDL是什么数据库的缩写 mc网易版无法连接服务器 北京一七网络技术有限地址 查看数据库中所有库命令 小型服务器和交换机辐射安全距离 数据库字段层深度计算 绝地求生亚服服务器迁至香港 僵尸工程怎么找服务器 软件开发的交付过程 数据库安全期末 批处理数据库合并去重 我国重要行业数据库 境外 出售 广州乐纷互联网科技有限公司招聘 司法部网站法律法规数据库 北京一七网络技术有限地址 云服务器可以用来编程吗
0