CentOS 7下分离于三台主机搭建基于FCGI的LAMP

一、要求

CentOS 7, lamp (php-fpm);
(1) 三者分离于三台主机;
(2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress;
(3) xcache

规划

第一台 192.168.1.112 httpd-2.4.6-40.el7.centos.x86_64 httpd服务器
第二台 192.168.1.113 php-fpm-5.4.16-36.el7_1.x86_64 php-fpm服务器
第三台 192.168.1.114 mariadb-5.5.47-1.el7_2.x86_64

mariadb服务器

全部关闭selinux,iptables

实践

基于FCGI模式安装包组

1.CentOS 6系列

PHP-5.3.2及以前版本:默认不支持fpm机制;需要自行打补丁并编译安装;

httpd-2.2:默认不支持fcgi协议,需要自行编译fcgi模块;

解决方案:编译安装httpd-2.4, php-5.3.3及以上版本;

2.CentOS 7系列

192.168.1.112:[[email protected] ~]# yum install -y httpd

192.168.1.113:[[email protected] ~]# yum install -y php-fpm php-mysql

192.168.1.114:[[email protected] ~]# yum install -y mariadb-server

3.配置修改

3.1 httpd服务器

3.1.1打开浏览器192.168.1.112可以看到apache测试页面

3.1.2配置修改

配置文件/etc/httpd/conf/httpd.conf    /etc/httpd/conf.d/*.conf

这里在httpd.conf或在conf.d下新建一个.conf结尾的配置文件均可。

vim /etc/httpd/conf.d/fcgi.conf

DirectoryIndex index.php #主页为index.php
ProxyRequests Off #关闭正向解析
ProxyPassMatch ^/(.*\.php)$  fcgi://192.168.1.113:9000/var/www/html/$1  #以.php结尾的都转发至php-fpm服务器下的/var/php下

/var/www/html可以自己定义,前提是在php-fpm服务器上要创建相应的目录

3.2 php-fpm服务器与httpd服务器连接

3.2.1配置文件 /etc/php-fpm.d/www.conf

  listen = 192.168.1.113:9000 #监听的本机的地址和端口
  listen.allowed_clients = 192.168.1.112 #允许httpd服务器转发过来

此时就将httpd和php-fpm服务器建立连接了

3.2.2测试一下

在php-fpm服务器的/var/www/html目录下新建一个index.php内容如下

<?php   
    phpinfo();    
?>

此时再进入192.168.1.112即可看到php-fpm的详细信息

3.3将mariadb与php-fpm连接

3.3.1配置mariadb服务器

在mariadb服务器上为php-fpm服务器添加一个可以访问的用户

 MariaDB>grant all on *.* to [email protected]‘192.168.%.%‘ identified by ‘test‘; 
 MariaDB> flush privileges;

编辑/etc/my.cnf

在 [mysqld]下方添加

 skip_name_resolve = ON

3.3.2配置php-fpm服务器

安装php-mysql驱动

yum install php-mysql -y

测试一下php-fpm服务器和mariadb服务器

编辑php-fpm服务器下的/var/php/index.php

 <?php
    $con = mysql_connect(‘192.168.1.114‘,‘test‘,‘test‘);
    if ($con)
        echo "OK";
    else
        echo "failed";    
    phpinfo();
    
  ?>

再次打开192.168.1.112网址可以看到

至此,已经连接完毕。

接下来搭建wordpress、phpmyadmin和xcache

规划

第一台192.168.1.112 httpd服务器 wordpress
第二台192.168.1.113 php-fpm服务器 xcache
第三台192.168.1.114 mariadb服务器 phpMyAdmin

1、安装xcache(在epel源中)

[[email protected] html]# yum install -y php-xcache
[[email protected] html]# systemctl reload php-fpm

2、安装phpMyAdmin(在php-fpm服务器中)

下载地址为https://www.phpmyadmin.net/downloads/

下载好后解压

[[email protected] html]# unzip phpMyAdmin-4.0.5-all-languages.zip -d pma
[[email protected] html]#  yum install php-mbstring #安装中文支持

配置

[[email protected] html]# cd pma
[[email protected] pma]# cp config.sample.inc.php config.inc.php
    $cfg[‘blowfish_secret‘] = ‘a8b7c6d‘;
    $cfg[‘Servers‘][$i][‘host‘] = ‘192.168.1.106‘

3、安装wordpress

下载地址为https://cn.wordpress.org/

时间: 2024-08-17 20:03:07

CentOS 7下分离于三台主机搭建基于FCGI的LAMP的相关文章

CentOS 7 下Django项目部署教程(基于uwsgi和Nginx)

本文主要介绍如何在Linux平台上部署Django相关项目,关于Django项目的部署在互联网论坛上有很多的资料,笔者在查阅众多资料并经过实践后发现结果并不如意(或多或少总是遇到一些问题,往往与资料的预期不相符).在浏览了许多资料后笔者整理得出了部署Django项目的一般性方法,部署的方法有很多种,在此笔者选择了较为常用的基于uwsgi和Nginx的部署方案. 一.前提准备 部署前主要是需要做一些与服务器相关的准备工作,本次教程的服务器采用了阿里云的 CentOS 7.3 64位,当然作为资料学

Apache 的修改端口,虚拟主机搭建基于网站加密和常见问题解答

Apache 的修改端口,虚拟主机搭建基于网站加密和常见问题解答 作者  浩浩哥来了 首先需要确定apache这个服务存在 /etc/init.d/httpd restart 如果启动起来了说明你已经安装成功 如果启动不起来就需要自己手动安装,因为添加了本地源,所以可以直接安装 Yum install http* -y /etc/init.d/httpd restart 在一次检测下,服务安装成功与否 Cd /var/www/html 目录下是存放网页的路径 Vim index.html 因为当

在同一主机上基于编译实现lamp并构建虚拟机使用pma和discuz

在同一主机上基于编译实现lamp并构建虚拟机使用pma和discuz 目的: ①通过手动编译方式,在linux系统上安装apache http2.4,mariadb,php构建lamp;其中php与http的结合方式需要构建两种:1.php以http模块方式安装:2.php以独立守护进程方式安装 : ②在上面构建的lamp基础上设置两个虚拟机,分别使用安装phpMyAdmin和discuz 第一部分:模块话php安装lamp 一.准备工作 (一).查询有没有安装过amp的程序包: [[email

CentOS环境下Java开发环境的搭建

------------------------------------------------------- 安装Jdk 1.查询系统默认JDK CentOS系统默认会安装JDK,一般建议卸载后安装自己所需要的Jdk版本 查询系统是否已安装Jdk用如下查询命令: #rpm -qa |grep java #rpm -qa |grep jdk #rpm -qa |grep gcj(GCJ: The GNU Compiler for Java,GNU环境下的Java编译器,我们要Sun的) 查询当前

VPS CentOS-6 下 LNMP HTTP服务器的搭建

VPS CentOS-6 下 LNMP HTTP服务器的搭建 前言 恢复更新后的第一篇博文, 前段时间由于各种理由, 把博客更新给宕掉了, 个人独立博客的开发也搁浅了, 现在随着工作的逐步稳定, 决心把博客重新恢复更新, 继续记录着代码路上的一点一滴. 在上篇博文中提到, 笔者将把工作和学习环境全面转移到Linux, 转移也没什么目的, Windows用久了, 换个口味.目前使用的Linux环境是 Ubuntu 14.04, 该版本是一个长期支持版本, 对于想试一试Linux系统的朋友, 也是值

CentOS 7 &nbsp; 基于fastcgi 的lamp

实验环境  CentOS 7, lamp (php-fpm) 要求:(1) 三者分离于三台主机: (2) 一个虚拟主机用于提供phpMyAdmin:另一个虚拟主机用于提供wordpress: (3) xcache 规划  172.18.105.110 上运行http服务器 172.18.250.157 运行数据库 172.18.253.26 运行php-fpm程序 我提前做好了DNS 两台A记录172.18.105.110 对应的FQDN 为www1.stu05.com  www2.stu05.

windows 下nginx 虚拟主机搭建

需要在 nginx.conf里面引入刚才配置的那个文件 第一步 加东西 http的节点里面加上 一定要注意的是:必须以  ;  结尾 include D:/phpen/nginx-1.3.6/conf/vhost/www.light.com.conf; 或者 include D:/phpen/nginx-1.3.6/conf/vhost/*.conf; 第二步  写配置文件 下面的 这两种方法我都测试过的哦 可以为每一个单独创建一个文件      这个是便于管理 也可以把所有的都写入同一个文件

基于CentOS 7下最小化安装的操作系统搭建Zabbix3.0环境

环境说明 系统版本:CentOS Linux release 7.3.1611 (Core) 内核版本:3.10.0-514.el7.x86_64 Httpd版本:Apache/2.4.6 (CentOS) MariaDB版本:5.5.52-MariaDB PHP版本:PHP 5.4.16 环境准备 [[email protected] ~]# setenforce 0 [[email protected] ~]# sed -i "s/SELINUX=enforcing/SELINUX=disa

CentOS 7 下搭建 主辅 DNS 服务器

1.1操作系统的版本信息   # uname -a   Linux localhost.localdomain3.10.0-123.el7.x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014       x86_64 x86_64 x86_64GNU/Linux   # cat /etc/redhat-release CentOS Linux release 7.0.1406 (Core) 1.2.BIND包的安装         # yum  -y  inst