文章目录

  • 动静分离产生的原因
  • 服务作用场景
  • 实验步骤
    • 配置apache服务
    • 配置Nginx服务器

动静分离产生的原因

Nginx的静态处理能力很强,但是动态处理能力不足,因此,在企业中常用动静分离技术。动静分离技术其实是采用代理的方式,在server{}段中加入带正则匹配的location来指定匹配项

针对PHP的动静分离:静态页面交给Nginx处理,动态页面交给PHP-FPM模块或Apache处理。

在Nginx的配置中,是通过location配置段配合正则匹配实现静态与动态页面的不同处理方式

服务作用场景

本案例根据企业需要,将配置Nginx实现动静分离,对 php页面的请求转发给LAMP处理,而静态页面交给Nginx处理,以实现动静分离。

实验步骤

配置apache服务

[root@localhost ~]# yum -y install httpd-devel[root@localhost ~]# firewall-cmd --permanent --zone=public --add-service=http
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start httpd

安装数据库

yum -y install mariadb mariadb-server mariadb-libs mariadb-devel

开启mariadb服务

[root@localhost ~]# systemctl start mariadb.service

开启mariadb服务并查看服务端口是否开启

[root@localhost ~]# netstat -ntap | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      9019/mysqld

配置数据库

[root@localhost ~]# mysql_secure_installation
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.Enter current password for root (enter for none):    回车 是否给root管理员设置密码Set root password? [Y/n] y   是
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..... Success!
Remove anonymous users? [Y/n] n    是否删除匿名用户... skipping.
Disallow root login remotely? [Y/n] n       ## 是否拒绝root用户远程登录... skipping.
Remove test database and access to it? [Y/n] n   拒绝远程登录   Remove test database and access to it? [Y/n] n   是否删除测试数据库... skipping.
Reload privilege tables now? [Y/n] y   是否加载权限列表... Success!

安装PHP服务及php与mysql连接依赖包

[root@localhost ~]# yum -y install php
[root@localhost ~]# yum -y install php-mysql

安装PHP插件

[root@localhost ~]# yum -y install php-gh php-ldap php-odbc php-pear php-xml php-xmlrpc  php-mbstring php-snmp php-soap curl-devel php-bcnath

创建php首页

[root@localhost html]# vim /var/www/html/index.php
<?php
phpinfo();
?>
~
[root@localhost html]# systemctl restart httpd

配置Nginx服务器

将nginx安装包上传大服务器/opt目录下,解压缩

[root@nginx opt]# tar zxvf nginx-1.12.2.tar.gz

创建nginx程序用户

[root@promote nginx-1.12.2]# useradd -M -s /sbin/nologin nginx

安装编译及依赖环境

[root@promote nginx-1.12.2]# yum -y install gcc gcc-c++ pcre pcre-devel zlib-devel

进入目录进行安装前配置

[root@localhost nginx-1.12.2]# ./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module

编译&安装

[root@localhost nginx-1.12.2]# make && make install

创建命令软连接

[root@promote nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

开启nginx服务

[root@promote nginx-1.12.2]# service nginx start
[root@promote nginx-1.12.2]#systemctl stop firewalld
[root@promote nginx-1.12.2]#setenforce 0

查看服务是否开启

[root@promote nginx-1.12.2]# netstat -ntap | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      11162/nginx: master
tcp        0      0 192.168.136.88:39252    36.156.207.242:80       TIME_WAIT   -
tcp        0      0 192.168.136.88:50406    210.28.130.3:80         TIME_WAIT   -
tcp        0      0 192.168.136.88:50404    210.28.130.3:80         TIME_WAIT   

安装elinks命令行浏览器

[root@promote nginx-1.12.2]# elinks http://192.168.136.88


按q退出

开始配置动静分离,编辑nginx配置文件

[root@promote nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf找到下面的并开启动静分离location ~ \.php$ {                              //开启proxy_pass   http://192.168.136.40;}

ps: proxy_pass转发处理

重启nginx服务

nginx -s quit      ## 关闭nginx服务
nginx              ## 开启nginx服务

本案例根据企业需要,将配置Nginx实现动静分离,对 php页面的请求转发给LAMP处理,而静态页面交给Nginx处理,以实现动静分离。

Apache与Nginx实现Web页面动静分离(产生的原因,应用场景)相关推荐

  1. Nginx+Keepalived+Tomcat之动静分离的web集群

                 为小公司提供大概一天持续在100万/日之间访问的高性能.高可用.高并发访问及动静分离的web集群方案 Nginx+Keepalived            高可用.反向代理 ...

  2. Nginx反向代理、动静分离、负载均衡及rewrite隐藏路径详解(Nginx Apache MySQL Redis)–第二部分...

    Nginx反向代理.动静分离.负载均衡及rewrite隐藏路径详解 (Nginx Apache MySQL Redis) 楓城浪子原创,转载请标明出处! 更多技术博文请见个人博客:https://fe ...

  3. ↑nginx+tomcat+httpd实现动静分离↑

    ↑nginx+tomcat+httpd实现动静分离↑ 2013-10-01 16:39:54 标签:tomcat动静分离 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本 ...

  4. Nginx负载均衡与动静分离

    文章目录 反向代理与负载均衡 nginx动静分离实验 在nginx主机上配置负载均衡 在nginx主机上配置动静分离 反向代理与负载均衡 nginx通常被用作后端服务器的反向代理,这样就可以很方便的实 ...

  5. 使用Nginx负载均衡及动静分离

    使用Nginx负载均衡及动静分离 目录 使用Nginx负载均衡及动静分离 一.系统拓扑图 二.环境准备 三.服务器安装 1.jdk,tomcat,mysql 2.Nginx的安装 2.1 gcc安装 ...

  6. Nginx-07:Nginx配置实例之动静分离

    Nginx配置实例之动静分离 1.动静分离概念 2.准备工作 image和www放静态资源. 3.具体配置 (1)在nginx的config中配置 autoindex on:列出当前文件夹中的文件 4 ...

  7. HAProxy+apache实现web服务动静分离

    HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支 ...

  8. 使用nginx作为代理实现动静分离

    客户端访问http://bbs.upl.com --> 解析到 nginx_proxy 172.16.2.8 nginx_proxy作为反向代理,实现动静分离:     如果是已知的静态页面请求 ...

  9. Nginx 反向代理、动静分离、负载均衡及配置实例

    文章目录 Nginx 代理 正向代理 反向代理 配置实例 动静分离 概念 配置实例 负载均衡 概念 分配策略 配置实例 Nginx Nginx ("engine x") 是一个高性 ...

最新文章

  1. 硕士,博士太多了?看完这组数据你就不那么认为了!
  2. python通过opencv使用图片制作简单视频(亲测)
  3. 经典算法(5)- 用二进制方法实现扩展的最大公约数(Extended GCD)
  4. 教你如何防止网站被挂马!
  5. 如何对namedtuples列表进行排序
  6. 命令行快速访问远程目录
  7. mixpanel umeng talkingdata
  8. C位流行语言,“2018年十大流行语”
  9. 宽带服务器维护查询,网络连接状态查询方法
  10. 计算机解决问题的几个必要,1–1计算机解决问题的过程.ppt
  11. TrackFormer: Multi-Object Tracking with Transformers
  12. 固态硬盘是什么接口_了解移动固态硬盘接口知识,告诉你PSSD到底能多快
  13. Oracle:经典例题解析
  14. 逍遥模拟器微信提示无法连接服务器,轻松解决夜神逍遥模拟器模拟器等模拟器无法连接问题...
  15. 安装下载python的安装和配置
  16. 选择室内地图提供商时需要考虑的12件事
  17. 1.Diagno-基本概述
  18. 阿里云国际站和阿里云国内站有什么区别?
  19. 在Scrapy中使用爬虫动态代理IP
  20. Elasticsearch之基础

热门文章

  1. 防止NullPointerException,是程序员的基本修养
  2. 设定游戏背景和英雄登场
  3. 即构科技:解决行业痛点,以MSDN为基础构建全球实时音视频通信云
  4. AOM Summit 来了
  5. 【LiveVideoStack线上分享】WebAssembly在Web多媒体领域的相关实践
  6. 不需要SFU实现WebRTC联播实践
  7. 编码服务正在步入云端
  8. AV1:下一代视频标准—约束定向增强滤波器
  9. Android Motion Stills实现AR即时运动捕捉
  10. GIAC 2020 全球互联网架构大会演讲实录:基于TarsGo的微服务技术架构实践