linux反向代理nginx+apache的实现

前言:
nginx反向代理服务器+负载均衡
用nginx做反向代理和负载均衡非常简单,
支持两个用法 1个proxy, 1个upstream,分别用来做反向代理,和负载均衡
以反向代理为例, nginx不自己处理php的相关请求,而是把php的相关请求转发给apache来处理.

在这里插入图片描述

----这就是传说的”动静分离”,动静分离不是一个严谨的说法,叫反向代理比较规范.

反向代理后端如果有多台服务器,自然可形成负载均衡,

实现:

一、准备

首先需要把PHP安装成Apache的一个模块,因此安装PHP的配置项是:
./configure --prefix=/usr/local/fastphp
–with-mysql=mysqlnd
–enable-mysqlnd
–with-gd
–enable-gd-native-ttf
–enable-gd-jis-conv
–with-apxs2=/usr/local/httpd/bin/apxs

二、配置apache
1、在httpd-conf配置文件中引入httpd-vhosts.conf
在这里插入图片描述
2、修改apache监听的端口
由于nginx已经占用了80端口,因此apache就需要使用其他端口,这里我们定位8080端口。
修改httpd.conf文件,如下:
在这里插入图片描述
配置文件中的directory里,要注意最后一行不要deny from all
在这里插入图片描述
3、配置apache虚拟主机
修改虚拟主机配置文件:httpd-vhosts.conf
大致配置可参考下图,具体配置视各情况而变化在这里插入图片描述
三、配置nginx
1、在nginx的配置文件中,将PHP请求用proxy_pass转发给apache做处理
在这里插入图片描述
这样,网站在请求PHP文件时,nginx就会将请求转发到apache,由apache处理php文件,而nginx处理静态文件

总结
以上就是nginx反向代理的实现

发布了91 篇原创文章 · 获赞 5 · 访问量 5456

猜你喜欢

转载自blog.csdn.net/weixin_43947156/article/details/102574319