在CentOS 7 上搭建LAMP
导读 | 要求:httpd的动态和静态资源分为两台主机提供,mysql也用单独一台主机。httpd服务提供虚拟主机,一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress。安装使用xcache为php服务提速。 |
~]# yum install httpd
注释掉主服务页面路径
~]# vim /etc/httpd/conf/httpd.conf
~]# touch /etc/httpd/conf.d/virtualhost.conf
~]# vim /etc/httpd/conf.d/virtualhost.conf
~]# touch /var/virtualhost/a/check.html
~]# vim /var/virtualhost/a/check.html
~]# touch /var/virtualhost/b/check.html
~]# vim /var/virtualhost/b/check.html
在访问测试的主机中定义将www.a.com和www.b.com解析为httpd服务器的ip地址 注:httpd-2.4:rpm包安装默认编译支持了fcgi模块;可以使用httpd -M查看已经加载的模块。
~]# yum install php-fpm
~]# mkdir /var/lib/php/session
~]# chown apache:apache /var/lib/php/session
~]# vim /var/phppage/a/check.php
~]# vim /var/phppage/b/check.php
~]# yum install php-mysql
然后重载一下服务
~]# systemctl reload php-fpm.service
6.使用systemctl enable php-fpm.service将服务设置为开机启动
~]# yum install mariadb-server
创建一个测试用户和数据库 在php服务器上放置网页资源的路径下添加测试页面 访问测试
LAMP搭建完成,可以正常提供服务。
~]# unzip phpMyAdmin-4.4.14.1-all-languages.zip -d /var/phppage/a
已经可以访问了,但是发现页面有些地方无法显示。这是因为此页面是由动态资源和静态资源组成的,而httpd服务器只是把动态资源请求转发到php服务器了,静态资源是httpd提供,它现在资源路径下并没有此资源,所以此页面显示不全。原理可见下图 解决方案:在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 然后使用httpd -t测试配置文件语法,再重载一下配置文件,就可以了 第二个方案:将所有phpMyAdmin源码文件直接放在DocumentRoot 路径下。php服务器则直接放在指定转发后的路径下。 布置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
注意:这样wp用来登陆和使用的数据库用户需提前创建。 后续过程类似配置phpMyAdmin,就不重复了。
这次我们使用编译安装xcache 准备工作:下载一个xcache源码包,安装Development Tools和Server Platform Development包组。安装php-devel包。
如果这一步没问题,执行make,然后执行make instal。 安装完成后,添加配置文件,然后让服务重载。