设为首页 收藏本站
查看: 1825|回复: 0

在CentOS 7 上搭建LAMP

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-4-21 10:50:12 | 显示全部楼层 |阅读模式
要求:httpd的动态和静态资源分为两台主机提供,mysql也用单独一台主机。httpd服务提供虚拟主机,一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress。安装使用xcache为php服务提速。
方案:1台主机作为httpd服务器,1台主机做php服务器,使用php-fpm模式,1台主机作为mysql数据库服务器。
准备工作:三台主机,配置好yum源。
wKiom1cW2CzjWAOTAABM6RKxY-Q689.jpg


第一步:配置httpd服务器
  • yum安装httpd包
    ~]# yum install httpd
    wKioL1cW28rhbrVzAAAj5RwrD20320.jpg



   启动服务
wKiom1cW25bCJoaOAACSq9rNlgw574.jpg    

测试是否能提供服务页面
wKiom1cW3BnDyXVsAAIn92zBOGg558.jpg   httpd服务工作正常

2. 配置虚拟主机和定义动态页面转发到php服务器。

   注释掉主服务页面路径
   ~]# vim /etc/httpd/conf/httpd.conf
    wKioL1cW36DRP4nJAAAjcecF8Bc927.jpg

    添加一个配置文件,用于定义虚拟主机和定义转发。
   ~]# touch /etc/httpd/conf.d/virtualhost.conf
   ~]# vim /etc/httpd/conf.d/virtualhost.conf
wKiom1cW413BLRwoAAD81BWCDds485.jpg

3. 测试虚拟主机
  ~]# touch /var/virtualhost/a/check.html
  ~]# vim /var/virtualhost/a/check.html
wKioL1cW5Zmyu_i7AAAFH_QaRtQ818.jpg

  ~]# touch /var/virtualhost/b/check.html
  ~]# vim /var/virtualhost/b/check.html
wKioL1cW5g7CYWQpAAADNfx7DHs112.jpg   
在访问测试的主机中定义将www.a.com和[url]www.b.com[/url]解析为httpd服务器的ip地址
wKiom1cW5gDTE8UnAABI0vTy-58265.jpg
wKiom1cW5gCQsWzKAABJIIOlyNI317.jpg
注:httpd-2.4:rpm包安装默认编译支持了fcgi模块;可以使用httpd -M查看已经加载的模块。
wKiom1cW8vfwB1UfAAAQIUeF0qQ715.jpg

4.使用systemctl enable httpd.service将服务设置为开机启动


第二步:配置php服务器
  • yum安装php-fpm包

~]# yum install php-fpm
  查看状态
wKioL1cW6O-SKYx3AAAjugmiLsk299.jpg

2. 修改配置文件
wKioL1cW7LWQTaZ6AABCcH6rdJY983.jpg
wKiom1cW6_XhUPneAABAJMWQx08648.jpg
wKioL1cW7LaxYpSbAAAtIRTMipY660.jpg
wKiom1cW6_agEOdwAAAiSI03jfU927.jpg
~]# mkdir /var/lib/php/session
  ~]# chown apache:apache /var/lib/php/session

3. 启动服务,查看状态
wKiom1cW7OHAwxjKAACAw1Mawik017.jpg

4. 在php服务器的资源路径下添加测试页面并测试
  ~]# vim /var/phppage/a/check.php
wKiom1cW76eDRAG-AAAH_ROmp8Y932.jpg
  ~]# vim /var/phppage/b/check.php
wKiom1cW8H-yhtG5AAAILhlKLrM290.jpg
访问
wKiom1cW8QWxSE9BAAC-0f9lef4807.jpg
wKioL1cW8cbQ31_eAADNALPAJP4523.jpg


5.安装php-mysql包(php和mysql之间的通信协议)
~]# yum install php-mysql

  然后重载一下服务
  ~]# systemctl reload php-fpm.service
6.使用systemctl enable php-fpm.service将服务设置为开机启动


第三部:配置mysql服务器

  • yum安装mariadb包
    ~]# yum install mariadb-server


wKiom1cW96eT7SDZAAAhSeHgWSw503.jpg

2.启动服务
wKiom1cXD_7woDxpAAEz57ifTW8552.jpg

3.测试
创建一个测试用户和数据库

wKiom1cXEA3hJ5jRAAC4yrON0ZQ070.jpg

在php服务器上放置网页资源的路径下添加测试页面
wKioL1cXFOrhJv9EAAAbbXX6ONo804.jpg

wKiom1cXFCnCm_uSAAAjH2WKq3Y182.jpg
wKioL1cXFOmxvyOaAAAjFNMLqq8327.jpg

访问测试
wKiom1cXFCnjOcXvAAB-mkpcJak200.jpg
wKiom1cXFCriYk5dAABsfeB_oZw803.jpg

4.使用systemctl enable mariadb.service将服务设置为开机启动

LAMP搭建完成,可以正常提供服务。

第四步:用www.a.com这个虚拟主机提供phpMyAdmin,用www.b.com这个虚拟主机提供wordpress

1.准备phpMyAdmin,wordpress的源码包
wKioL1cXGTuidPtvAAAW2eL6GL0247.jpg

2.解压到放置页面资源的路径下
~]# unzip phpMyAdmin-4.4.14.1-all-languages.zip -d /var/phppage/a

3.编辑其配置文件
wKioL1cXHhLzQ4eCAADf-pHmIIs502.jpg
wKioL1cXHnPQjIB9AABzkLoR3SY493.jpg

4.访问

wKiom1cXH0axQjYCAACxnQdLecI006.jpg

已经可以访问了,但是发现页面有些地方无法显示。这是因为此页面是由动态资源和静态资源组成的,而httpd服务器只是把动态资源请求转发到php服务器了,静态资源是httpd提供,它现在资源路径下并没有此资源,所以此页面显示不全。原理可见下图
wKioL1cXIZbT0C5hAAB3558nBF8829.jpg
解决方案:在httpd服务器上的资源放置路径下同样放置一份phpMyAdmin源码文件,这样页面就可以显示完全了。
现在我们要访问phpMyAdmin这个页面时,需要在给出域名的同时还要指定url。这样太麻烦。
有两个方案可以解决。
第一个方案:修改虚拟主机的配置,修改DocumentRoot 路径 同时修改转发后的路径
DocumentRoot /var/virtualhost/a/phpMyAdmin-4.4.14.1-all-languages
ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.0.132:9000/var/phppage/a/phpMyAdmin-4.4.14.1-all-languages/$1
wKiom1cXKo3Ty0fgAABeulGXmAg373.jpg
然后使用httpd -t测试配置文件语法,再重载以下配置文件,就可以了
wKiom1cXKqCQCMKQAACppld4fgU956.jpg 第二个方案:将所有phpMyAdmin源码文件直接放在DocumentRoot 路径下。php服务器则直接放在指定转发后的路径下。
wKiom1cXK8Hxrpn_AAC3hBNPI3M936.jpg
wKiom1cXJYvh1-OEAAC-3DyldSA157.jpg


布置wordpress
~]# unzip wordpress-4.3.1-zh_CN.zip -d /var/phppage/b

]# ]# cp wp-config-sample.php wp-config.php
]# vim wp-config.php
wKioL1cXLwLAtu_YAABt21MV1AU622.jpg
注意:这样wp用来登陆和使用的数据库用户需提前创建。
后续过程类似配置phpMyAdmin,就不重复了。

第五步:安装xcache,提高处理php请求速度

1.安装前先做一下压力测试
wKioL1cXMMHDXjAPAABniOwMB_I064.jpg
wKiom1cXMAHTS5BAAAC6fw_wlz0512.jpg

这次我们使用编译安装xcache

准备工作:下载一个xcache源码包,安装Development Tools和Server Platform Development包组。安装php-devel包。

2.开始编译
wKiom1cXNTGixJRTAADwC0s-ElY828.jpg
如果这一步没问题,执行make,然后执行make instal。
安装完成后,添加配置文件,然后让服务重载。
wKiom1cXNX-i1J0ZAAAZIX-Wlyc461.jpg

3.再做一次压力测试
wKiom1cXNfrwmcWwAABocFn0Wz4275.jpg
wKioL1cXNrvwZ7MMAACz-q-df1Q772.jpg
对比两次压力测试可以看出,装了xcache以后,php请求处理速度提高3倍左右。






运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-206889-1-1.html 上篇帖子: lnmp安装脚本 下篇帖子: CentOS下主机分离搭建基于FCGI的LAMP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表