nginx反代后端动静分离 php会话保持使用memcached

nginx调度器:

DR:172.18.11.111

]# yum -y install nginx

]# systemctl start nginx

php主机:部署phpwind程序、安装memcached

RS1:172.18.11.112

RS2:172.18.11.113

]# yum -y install php

]# systemctl start php

]# yum -y install memcached

]# yum -y install libmemcached

]# yum -y install php-pecl-memcached

配置php将会话保存至memcached中,确保如下两个参数的值:

]# vim /etc/php.ini

测试新建php页面setsess.php,为客户端设置启用session:

]# vim /var/www/html/showsess.php

]# vim /var/www/html/setsess.php

web主机:

RS3:172.18.11.11

RS4:172.18.11.12

]# yum -y install httpd

]# systemctl start httpd

在php主机中,使用nfs共享存储;

在172.18.11.112上提供共享目录:

]# yum -y install nfs-utils

]# systemctl start nfs

]# vim /etc/exports

/var/www/html 172.18.11.0/24(rw,no_root_squash)

]# exportfs -r

把phpwind解压在172.18.11.112

]# unzip /var/www/html/phpwind_UTF8_8.7.zip

]# cd /var/www/html/upload

]# chmod -R o+w attachment data html

]# mv install.php install.php.bak

在172.18.11.113、172.18.11.11/172.18.11.12上分别进行挂载共享目录:

]# showmount -e 172.18.11.112 查看可挂载共享文件

]# mount -t nfs 172.18.11.112:/var/www/html /var/www/html/

]# yum -y install mariadb-server

]# systemctl start mariadb

]# mysql

> CREATE DATABASE phpwind;

> GRANT ALL ON phpwind.* TO [email protected]‘172.18.11.%‘ IDENTIFIED BY ‘phpwind‘;

> FLUSH PRIVILEGES;

在DR上编辑nginx配置文件:

]# vim /etc/nginx/conf.d/default.conf

分别在RS3、4上提供web测试页;并指定根路径在/var/www/html

分别在后端各服务器上启动相应的服务;

浏览器输入:http://172.18.11.111/setsess.php

刷新多次:分别显示为:会话ID交替保持

浏览器输入:http://172.18.11.111/showsess.php

刷新多次:会话ID不断变化

测试phpwind

在浏览器输入:在浏览器输入:http://172.18.11.111/upload/index.php

点击接受

点击下一步

填入数据库相关信息,创始人信息随意填写

此时,服务搭建完毕。

总结:

前端为一台nginx调度器,负责动静分离调度到后端不同主机,后端两台web服务器负责响应静态请求,两台php服务器负责响应动态请求,并且php会话保存在memcached中,注意配置upstream server时location定义的访问的uri,而且要在http配置段定义,在server配置段调用,相关配置指令使用的位置不能写错地方,后端主机上各服务启动配置好,在数据库重建存放phpwind的相关信息,php主机共享存储使用nfs,创建共享目录并导出,在另外所有后端服务器挂载这个共享目录,否则phpwind的静态图片会显示不了,以及php使用memcached都要配置好,配置文件设置搞清楚后,就部署完成。

注意:在整个服务搭建过程中,要每做一步配置即时验证服务配置是否成功,从单机测试,到跨主机测试,分步骤测试,不要等所有服务都配置好了再测试,那样如果出现问题,不利于故障判断与排除。

时间: 2024-10-20 11:31:10

nginx反代后端动静分离 php会话保持使用memcached的相关文章

haproxy+nginx+tomcat+memcache实现动静分离、会话同步集群

一.实验说明 haproxy在前端做负载均衡调度,后端实现动静分离 静态资源server为nginx 动态内容使用nginx&tomcat做app server,集成于单机,两台 使用两台memcache服务器做高可用session缓存,实现app server宕机时会话不中断 以上组合使用实现业务.session.session缓存均为高可用的集群. 二.实验准备 haproxy server:192.168.0.168 nginx server(静态):192.168.0.68 nginx+

nginx反代httpd,实现三种tomcat代理模型至后端的tomcat服务器,会话绑定的三种方式

构建tomcat集群,实现前端一台nginx反代,到后端的apache服务器,由apache负责向后端的tomcat服务器进行资源调度,这样的模式比直接用nginx反代到后端主机,tomcat服务器所受到的压力会更小,服务将会更加稳定,这样的模式是经过实践检验出来的.如果nginx直接调度到后端tomcat服务器,则只支持http和https,而不支持ajp,http与https模式的设定,可以让外来客户直接访问tomcat服务器,而不需要经过我们设置好的前端nginx的端口,这样是十分不安全的

Http和Nginx反代至Tomcat(LNMT、LAMT)

Http和Nginx反代至Tomcat(LNMT.LAMT) ================================================================================ 概述: 本章将主要介绍Http和Nginx反代至Tomcat,具体内容如下: LNMT部署并实现动静分离 LAMT部署的实现方式: ·proxy_http_module代理配置 ·proxy_ajp_module代理配置 Tomcat脚本(启动.停止.重启) ========

Tomcat集群session复制,httpd/nginx反代Tomcat集群

   一个大型站点都会涉及到动态应用,动态应用都需要做会话保持,常见的会话保持方式就三种,一是session stick,二是session replication,三是session share,对于小型规模的tomcat集群,大多者会采用session replication方式,但阅读官方文档也好,查询大牛博客也罢,发现均有不准确之处,所以亲测成功实现之后得出如下文档,还望高人指点. 实验环境: 操作系统:CentOS 7.2 tomcat版本:tomcat-7.0.54(yum安装方式)

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

Nginx反向代理.动静分离.负载均衡及rewrite隐藏路径详解 (Nginx Apache MySQL Redis) 楓城浪子原创,转载请标明出处! 更多技术博文请见个人博客:https://fengchenglangzi.000webhostapp.com 微信bh19890922 QQ445718526.490425557 三.Nginx动静分离及负载均衡 3.1 Nginx安装 请参考:https://fengchenglangzi.000webhostapp.com/?p=511 亦

nginx反代

需求:同一主机上跑多个web站点,使用httpd+php-fpm无法满足需要: 解决方案:加一个nginx,接入所有用户访问,根据用户访问的主页不同,反代后端不同站点: 前端:nginx 后端: 同一主机多个web站点 www.bbtw.net www.shxinsheng.wang new.khcm.net 安装过程略,主要描述反代过程: nginx主配置文件: ]# egrep -v '^[[:space:]]*#|^$' /etc/nginx/nginx.conf user nginx;

Nginx反代超详细教程:加速网站Google、Gravatar和Hostloc

VPS教程 » Nginx反代超详细教程:加速网站Google.Gravatar和Hostloc Nginx反代超详细教程:加速网站Google.Gravatar和Hostloc December 31st , 2015•Edit•访问: 672 次 nginx 这个轻量级.高性能的 web server 主要可以干两件事情: 1.直接作为http server(需要Fastcgi配合): 2.作为反代服务器(进一步可以实现均衡负载). 这里主要利用一下反功能来方便一下日常生活.选择Gravat

nginx反代mogilefs

一.简介 1.介绍 MogileFS 是一个开源的分布式文件系统,用于组建分布式文件集群,由 LiveJournal 旗下 Danga Interactive 公司开发,Danga 团队开发了包括 Memcached.MogileFS.Perlbal 等不错的开源项目:(注:Perlbal 是一个强大的 Perl 写的反向代理服务器) 2.MogileFS的特性 (1)工作在应用层提供服务 (2)无单点(至少存在两份副本在不同的节点上) (3)自动文件复制 mogilefs将多个文件组织成一个单

nginx反代mogilefs实现海量小文件存储

一.简介 1.介绍 MogileFS 是一个开源的分布式文件系统,用于组建分布式文件集群,由 LiveJournal 旗下 Danga Interactive 公司开发,Danga 团队开发了包括 Memcached.MogileFS.Perlbal 等不错的开源项目:(注:Perlbal 是一个强大的 Perl 写的反向代理服务器) 2.MogileFS的特性 (1)工作在应用层提供服务 (2)无单点(至少存在两份副本在不同的节点上) (3)自动文件复制 mogilefs将多个文件组织成一个单