系统: Centos6

httpd版本: 2.4 使用event工作模式

PHP版本: 5.4.26

mariadb版本: 5.5.46

xcache版本: 3.0.3

httpd:192.168.1.101

mariadb:192.168.1.102

PHP:192.168.1.103

安装顺序: PHP最后安装

注意事项:

1.在httpd2.2上使用fcgi功能,需要额外打补丁

一、安装httpd2.4:

在192.168.1.101上操作

1.准备源码包

wKioL1hqEaqBsB1YAADAL2peBIk789.png

2.安装所需环境

yum groupinstall -y"Development tools" "Server Platform Development"

yum install -y pcre-devel

3.安装apr

安装apr

tar -xjvf apr-1.5.0.tar.bz2

cd apr-1.5.0

./configure --prefix=/usr/local/apr

make & make install

安装apr-util

tar -xjvfapr-util-1.5.3.tar.bz2

cd apr-util-1.5.3

./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr

//指定apr安装路径

make && make install

4.安装httpd2.4

wKiom1hqEcjAMkALAAC0tfKajU8418.png

tar -xjvf httpd-2.4.9.tar.bz2

cd httpd-2.4.9

./configure --prefix=/usr/local/apache--sysconf=/etc/httpd24--enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util/--enable-modules=most--enable-mpms-shared=all --with-mpm=event

//指定apr路径,启用大多数模块(可根据需要选择),使httpd默认使用event工作模式

make && make install

5.后续工作

vim/etc/profile.d/http24.sh //添加环境变量

wKioL1hqEeWRjNDoAABd9jicaLI308.png

. /etc/profile.d/http24.sh //加载环境变量

ln -s/usr/local/apache/include/ /usr/include/httpd24 //链接头文件

echo "MANPATH/usr/local/apache/man/" >> /etc/man.config //添加man文档路径

cp /etc/rc.d/init.d/httpd/etc/rc.d/init.d/httpd24

vim /etc/rc.d/init.d/httpd24 //配置服务脚本

wKiom1hqEgGSWS0mAAF48yHsSKU867.png

vim/etc/httpd24/httpd.conf //修改httpd的pid路径

wKiom1hqEhyxPLYYAAD38j_mvYI394.png

chkconfig--add httpd24

chkconfig--level 35 httpd24 on //配置开机启动

wKioL1hqEjLiqXaYAABinZ3gmtY188.png

servicehttpd24 start //启动httpd

二、安装mariadb:

在192.168.1.102上操作

1.准备源码包

wKiom1hqEljROsGMAACnU1TwqQk837.png

2.准备MysqL组和用户

groupadd -r -g 306 MysqL

useradd -r -g MysqL -u 306 MysqL

3.部署mariadb

tar-xzvf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/

ln -s/usr/local/mariadb-5.5.46-linux-x86_64/ /usr/local/MysqL

//便于以后升级版本用

wKioL1hqEnSARrnqAAHWReCOCwU076.png

chown -R root:MysqL/usr/local/MysqL/* //修改权限

wKioL1hqEpKBHd8uAAMVjkFz0YQ328.png

4.初始化数据库

mkdir-p /mydata/data

chown MysqL:MysqL/mydata/data/ //准备数据库存放目录

/usr/local/MysqL/scripts/MysqL_install_db--user=MysqL --basedir=/usr/local/MysqL--datadir=/mydata/data/

//指定mariadb目录和数据库存放目录

5.准备配置文件

mkdir/etc/MysqL

cp/usr/local/MysqL/support-files/my-large.cnf /etc/MysqL/my.cnf

//复制模板,可根据需求选择

vim /etc/MysqL/my.cnf

wKioL1hqErniRq_GAAJ6SwTInQ8344.png

6.后续工作

vim /etc/profile.d/MysqLd.sh //添加环境变量

wKiom1hqEs2ze92TAABhpvYZBgo317.png

. /etc/profile.d/MysqLd.sh //加载环境变量

echo '/usr/local/MysqL/lib/' >/etc/ld.so.conf.d/MysqLd.conf //添加库路径

ldconfig//加载库路径

ln -s /usr/local/MysqL/include/MysqL/ /usr/include/MysqLd

echo 'MANPATH /usr/local/MysqL/man/' >>/etc/man.config //添加man文档路径

cp /usr/local/MysqL/support-files/MysqL.server/etc/rc.d/init.d/MysqLd //复制服务脚本

chkconfig --add MysqLd

chkconfig MysqLd on //设置开机启动

wKiom1hqEuXQdTSIAAB8Eus3vV4395.png

service MysqLd start //启动服务

7.安全初始化

/usr/local/MysqL/bin/MysqL_secure_installation

wKiom1hqEwDQjj-6AACk9bYsUWQ538.png

wKioL1hqExnQDXE0AAGbhZcmKHo261.png

wKiom1hqEzDC7cT3AADxWSwCl8k755.png

wKioL1hqE0aia6icAACewvo0Jns841.png

三、安装PHP:

在192.168.1.103上操作

1.准备源码包

wKioL1hqE3-AKwIHAADBx2X_GmE416.png

2.安装所需环境

yumgroupinstall -y "Development tools" "Server PlatformDevelopment"

yum install -y bzip2-devel libmcrypt-devel libxml2-devel

3.准备MysqL库

tar-xzvf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/

mv /usr/local/mariadb-5.5.46-linux-x86_64//usr/local/MysqL

wKiom1hqE5yAt1A1AAHmhy3l7uw168.png

注:

可以使用yum install -y PHP-MysqL来安装所需MysqL库,编译安装PHP时,不要指定MysqL的具体路径即可



4.安装PHP

tar -xjvf PHP-5.4.26.tar.bz2

cd PHP-5.4.26

./configure--prefix=/usr/local/PHP5 --with-MysqL=/usr/local/MysqL --with-openssl --with-MysqLi=/usr/local/MysqL/bin/MysqL_config --enable-mbstring --with-freetype-dir --with-jpeg-dir--with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-mcrypt --with-config-file-path=/etc/PHP--with-config-file-scan-dir=/etc/PHP/PHP.d--with-bz2

//启用fpm(即fcgi)

make -j 4 && makeinstall //使用4线程编译,能提高速度

5.配置PHP

mkdir -p /etc/PHP/PHP.d //准备目录存放配置文件

cpPHP-5.4.26/PHP.ini-production /etc/PHP/PHP.ini //复制源码包中的配置文件

cp/usr/local/PHP5/etc/{PHP-fpm.conf.default,PHP-fpm.conf}

//复制PHP-fpm配置文件

vim/usr/local/PHP5/etc/PHP-fpm.conf

wKiom1hqFCOxsU_SAACuoAQc-Mw755.png

wKioL1hqFDjRDmSfAADb7cJ7fJQ174.png

wKiom1hqFFySO3ycAATxuo8gRyA996.png

6.后续工作

vim /etc/profile.d/PHP5.sh //添加PATH路径

wKioL1hqFIXRvej8AAA2Emm_M98491.png

. /etc/profile.d/PHP5.sh //加载环境变量

cpPHP-5.4.26/sapi/fpm/init.d.PHP-fpm /etc/rc.d/init.d/PHP-fpm //复制服务脚本

vim /etc/rc.d/init.d/PHP-fpm //修改pid路径

wKioL1hqFJuhbt84AAETFm6268g900.png

chmod +x/etc/rc.d/init.d/PHP-fpm //添加执行权限

chkconfig --add PHP-fpm

chkconfig PHP-fpm on //配置开机启动

wKiom1hqFLCSKGeOAAB0QdKF-2g810.png

service PHP-fpm start //启动服务

wKiom1hqFMXSMPA4AADSOhKrPE4269.png

wKioL1hqFNqSJKhuAAGTsYgXqtI030.png

四、配置httpd:

在192.168.1.200上操作

cp/etc/httpd24/httpd.conf{,.bak} //先备份

vim /etc/httpd24/httpd.conf

wKiom1hqFPqQQJcrAALK5t5osCQ191.png

wKioL1hqFRTy4vLxAAB4ybxXIRw309.png

wKiom1hqFSvABCN1AAEgnsuiX84211.png

httpd -t //检查httpd配置

service httpd24 reload //重载配置

六、 添加虚拟主机:

1.添加虚拟主机

vim /etc/httpd24/httpd.conf

wKioL1hqFUCTMvDHAADRpatpSdc460.png

vim/etc/httpd24/extra/httpd-vhosts.conf

wKiom1hqFVTxAe9cAABvLuEdt24192.png

vim/etc/httpd24/extra/test.conf

wKioL1hqFWzgAjciAAE96XY6Edk776.png

2. 准备测试页面(httpd服务器和PHP服务器都需要创建)

mkdir -p /mydata/www/

vim /mydata/www/index.PHP

wKiom1hqFYahb_PBAAAiJB7t0Wc722.png

3.测试

wKioL1hqFZ3SwmbDAADzCK-yCDM070.png

七、 整合xcache:

在PHP服务器上操作

  1. 1.准备源码包

wKiom1hqFbXC3JE4AACNCjnLpsg252.png

2.安装

tar -xjvf xcache-3.0.3.tar.bz2

cd xcache-3.0.3

/usr/local/PHP/bin/PHPize //生成configure

wKiom1hqFdOjO7t8AADXErEei4A556.png

./configure --enable-xcache --with-PHP-config=/usr/local/PHP5/bin/PHP-config

//指定PHP安装路径

make && make install

wKiom1hqFejhlfPhAAD5m2T-Jkc252.png

3.整合xcache

cp xcache-3.0.3/xcache.ini /etc/PHP/PHP.d //复制xcache配置文件

wKioL1hqFgHQ6xJKAAGSK9nira4732.png

wKiom1hqFhah3gA_AAFkXRZsmyU452.png

service PHP-fpm reload //重载配置

wKioL1hqFi6RONejAAE1xQzs2Oc457.png

测试连接mariadb

MysqL -uroot -p12345 //mariadb服务器上操作,登录数据库创建用户

CREATE USER 'root'@'%'IDENTIFIED BY '12345'; //创建远程访问权限

FLUSH PRIVILEGES; //刷新权限表

vim /mydata/www/db.PHP //在PHP服务器上准备测试页面

wKiom1hqFkTy4DRCAAC0NTXeC5I075.png

wKioL1hqFmTDQ4IzAAGl3IKLRVQ658.png

注:

1.经测试,httpd服务器上可以没有具体的网页文件,但必须要有相应的网站目录,否则会被forbidden

2.编译安装httpd2.4貌似不支持使用Include *.conf的方式来分割配置文件

Centos6部署lamp: httpd2.4+fpm模式的更多相关文章

  1. iOS – 友好的NSDate格式

    我需要在我的应用程序中显示帖子的日期给用户,现在我用这种格式:“5月25日星期五”.如何格式化NSDate以阅读“2小时前”的内容?使其更加用户友好.解决方法NSDateFormatter不能做这样的事情;你将需要建立自己的规则.我想像:所以这是打印’x分钟前’或’x小时前’从日期起24小时,通常是一天.

  2. ios – 存档期间不存在Xcode环境变量

    我有一个具有TestFlight构建方案的iOS应用程序.在此方案中,我在“运行”选项卡中设置了一个称为TESTFLIGHT的环境变量,值为1.此外,在构建方案的“配置文件”选项卡中,它已选中“使用RUn操作的参数和变量”选项,并在列表中看到相应的EV.当从Xcode运行应用程序时,这可以正常工作,但是当我在存储设备上运行应用程序时,环境变量TESTFLIGHT不存在.我的问题是有一个我在这里缺少的选项/方案选项卡?

  3. 从iOS应用程序发送帖子到PHP脚本不工作…简单的解决方案就像

    我之前已经做了好几次了但是由于某些原因我无法通过这个帖子…我尝试了设置为_POST且没有的变量的PHP脚本……当它们未设置为发布时它工作精细.这是我的iOS代码:这里是PHP的一大块,POST变量不在正确的位置?我想这对于更有经验的开发人员来说是一个相当简单的答案,感谢您的帮助!解决方法$_POST是一个数组,而不是一个函数.您需要使用方括号来访问数组索引:

  4. 记一次云计算测试实验-openstack-icehouse-安装swift

    -----------------------controller:---------------------------------sourceadmin-openrc.shkeystoneuser-create--name=swift--pass=000000--email=swift@localhostkeystoneuser-role-add--user=swift--tenant=ser

  5. swift学习2 元组 tuples

    swift中出现了一种新的数据结构,非常牛掰的元组tuples如果懂PHP的猿,会发现这个元组和PHP的数组非常类似,同样是可以默认不指定key,也可以指定key目前的学习疑问是,如何进行元组的遍历?

  6. Ubantu下配置swift开发环境

    恭喜.现在可以直接在这里写入临时的swift代码,注意是临时的.如果想要写swift,需要新建一个文件,比如touchhello.swift.用vim打开,在里面写入HelloWorld的代码,保存退出.编译上面的代码源文件,打开终端,找到源代码所在目录,输入命令swiftchello.swift,即可编译,如果没有出现错误,则说明编译成功.运行上面的hello,编译之后会出现一个新文件hello;这是ubantu的可执行文件,直接输入./hello即可执行

  7. 尝试使用swift mailer,gmail smtp,php发送邮件

    这里是我的代码:在运行时出现此错误…

  8. Android – 将SQLite与MySQL同步的最佳方式

    参见英文答案>Synchronizingclient-serverdatabases5个我正在开发一个包含网络应用和移动应用程序的项目,该应用程序记录每日用户的数据.用户可以删除,更新他们的数据,他们可以使用许多设备插入数据.我打算这样开发:用户输入他们的数据然后插入sqlite.服务将定期启动(每5小时或每小时)以使用时间戳与MysqL同步.我确实在互联网上使用服务和时间戳搜索了一个样本,但我一

  9. android – 错误:程序“/ndk-build.cmd”在PATH中找不到

    按钮在出现的框中,选择名称字段并键入NDKROOT.在您解压缩AndroidNDK的路径中的值类型的字段中.点击“应用”,完成,对依赖NDK的任何其他项目进行此操作.

  10. android – 模拟器中hosts文件中的Url映射被忽略

    我正在使用genymotion仿真器,并使用它从主机文件中提取adbremountadbpull/system/etc/hostsC:\Users\Rkn09\Desktop\hosts我添加了新的映射192.168.0.115xxx.mydomain.com,我把它推回到模拟器使用adbpushC:\Users\Rkn09\Desktop\hosts/system/etc/hosts但是当我向x

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部