NGINX怎么部署动静分离

NGINX怎么部署动静分离

这篇文章主要讲解了“NGINX怎么部署动静分离”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“NGINX怎么部署动静分离”吧!

一、项目简述

部署wordpress实现整个网站的动静分离,实现如下要求:

1.前端Nginx收到静态请求,直接从NFS中返回给客户端。

2.前端Nginx收到动态请求转交给通过FastCGI交给PHP服务器处理。

—-如果得到静态结果直接从NFS取出结果交给Nginx然后返回给客户端。

—-如果需要数据处理PHP服务器连接数据库后将结果返回给Nginx

3.前端Nginx收到图片请求以.jpg、.png、.gif等请求交给后端Images服务器处理。

二、整体架构图

三、配置详解

1.NFS服务器配置

vim/etc/exports/app/blog10.10.0.0/24(ro,sync,root_squash,no_all_squash)#只允许内网网段挂载,提高安全性。cd/app/blog#将wordpress文件解压tar-xvfwordpress-4.8.1-zh_CN.tar.gz

2.Nginx服务器配置

首先Nginx与PHP服务器都要挂载NFS。实现统一部署方便管理

mount 10.10.0.72:/app/blog /app/blog # 将NFS的/app/blog挂载至本地的/app/blog

然后再配置Nginx

Nginx主要是server中的location的配置。配置location将.php结尾的交给PHP服务器。将.jpg、gif结尾的交给Image。其他配置按默认即可。

vim/etc/nginx/nginx.confhttp{log_formatmain'$remote_addr-$remote_user[$time_local]"$request"''$status$body_bytes_sent"$http_referer"''"$http_user_agent""$http_x_forwarded_for"';access_log/var/log/nginx/access.logmain;sendfileon;tcp_nopushon;tcp_nodelayon;keepalive_timeout65;types_hash_max_size2048;include/etc/nginx/mime.types;default_typeapplication/octet-stream;include/etc/nginx/conf.d/*.conf;server{listen80default_server;server_namewww.shuaiguoxia.com;indexindex.phpindex.html;root/app/blog;#根目录为挂载的NFS的挂载点include/etc/nginx/default.d/*.conf;location~*\.php${#location匹配将php结尾的交给PHP服务器fastcgi_pass10.10.0.22:9000;fastcgi_indexindex.php;fastcgi_paramSCRIPT_FILENAME/app/blog$fastcgi_script_name;includefastcgi_params;}location~*\.(jpg|gif)${#location匹配将图片交给Image处理proxy_passhttp://10.10.0.23:80;#Image服务器要开启web服务}error_page404/404.html;location=/40x.html{}error_page500502503504/50x.html;location=/50x.html{}}

3.PHP服务器配置

PHP服务器的配置比较简单,主要讲PHP以FPM模式安装后进行简单的配置即可

yuminstallphp-fpmphp-mysqlvim/etc/php-fpm.d/www.conflisten=9000#只写监听端口,即监听所有IPlisten.allowed_clients=any#允许所有IP进行访问。或者将这行注释。

4.MySQL服务器

yuminstallmarirdb-server/usr/local/mysql/bin/myhsql_secure_installation#MySql初始化脚本,以下为每一项的翻译是否设置root密码输入密码确认密码是否设置匿名用户是否允许root远程登录删除test数据库现在是否生效mysql-uroot-pcreatedatabasewpdb;#创建wp数据库grantallonwpdb.*towpadm@'10.10.%'idenfiedby'centos';#授权用户。用户不存在系统会自动创建

5.Image服务器配置

yuminstallnginx#安装Nginxcd/app/image#将所有图片解压至此路径。图片的目录结构要保持原样tar-xvfwordpress-4.8.1-zh_CN.tar.gzserver{root/app/image;#仅仅修改根目录这一行即可。Httpd同理}#如果使用apache要注意在CentOS7下默认拒绝所有nginxstart#启动服务

6.配置wordpress

cpwp-config-sample.phpwp-config.php#复制一个模板文件后改名作为主配置文件vimwp-config.php/**WordPress数据库的名称*/define('DB_NAME','wpdb');#wpdb为MySQL中创建的数据库/**MySQL数据库用户名*/define('DB_USER','wpadm');#wpadm为MySQL中授权的用户/**MySQL数据库密码*/define('DB_PASSWORD','centos');#授权用户的密码/**MySQL主机*/define('DB_HOST','10.10.0.24');#MySQL主机地址

至此配置就已经完成。达到了图片从图片服务器返回,静态nginx直接返回,动态交给PHP进行处理。

感谢各位的阅读,以上就是“NGINX怎么部署动静分离”的内容了,经过本文的学习后,相信大家对NGINX怎么部署动静分离这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是恰卡编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

发布于 2022-02-16 23:46:20
收藏
分享
海报
0 条评论
27
上一篇:Nginx怎么配置TCP负载均衡 下一篇:CentOS如何配置Nginx反向代理
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码