首页 » 网站推广 » nginxphpfpm分别技巧_nginx动静分离实战

nginxphpfpm分别技巧_nginx动静分离实战

访客 2024-12-09 0

扫一扫用手机浏览

文章目录 [+]

动静分离示意图

准备

我将用三个端口(80,8001,8002)代表负载均衡,静态资源,动态资源。
当然你也可以利用其他做事器来供应静态和动态做事。

nginxphpfpm分别技巧_nginx动静分离实战

我是在centos7上测试,默认开启了firewall防火墙,以是要将两个端口打开。

nginxphpfpm分别技巧_nginx动静分离实战
(图片来自网络侵删)

静态资源server配置

将所有图片干系的要求转至8001端口,并将目录设为"/mnt/static/image“。

我在上述目录中从”http://nginx.org/nginx.png“下载了这张图片做测试。

# wget http://nginx.org/nginx.png

当要求"http://localhost:8001/nginx.png"时,能看到图片则配置成功。

动态资源server配置

以php5.4为例,下载并安装php-fpm来配置动态网页解析。
在centos7中可以直接用yum下载安装。

# yum install php# yum instal php-fpm# systemctl start php-fpm

nginx配置如下(默认nginx会有如下配置,只需将前面井号删除即可,并修正标红处):

在目录html新建一个test.php文件

<?phpecho "dynamic Web page";

要求"http://localhost:8002"时,涌现如下页面,则配置成功。

负载配置

紧张利用了”upstream“和"proxy_pass"这两个指令。

如果配置完成重启nginx报"proxy_params not found"的缺点 ,可以在同目录下新建此文件,内容如下:

proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;

当我们要求”http://localhost/nginx.png“和”http://localhost/test.php“能涌现与带端口号访问同等的结果时,则表明配置成功。

终极测试

我在目录”/mnt/www“中新建了一个index.html,内容如下:

当访问”http://localhost“时,会涌现如下结果,动静态页面均能精确访问。

当我将8002端口所对应的server关闭或其他影响不能正常访问动态php时,下面的动态页不显示,不影响静态资源的加载。
这也是动静分离的好处之一,可以提高访问性能和可掩护性,以及提高用户体验度。

标签:

相关文章