YUM实现LAMP

现在有许多网站用LAMP,而用yum实现LAMP是比较方便,而且出错几率比较小,httpd和PHP有两种结合方式,下面简单介绍下

注:selinux关掉、防火墙先关掉

以模块方式和httpd结合(cgi)

需要安装的软件包组以及软件,以centos7为例,通过搭建WordPress来验证

yum groupinstall "development tools" -y
yum install httpd php php-mysql mariadb-server -y (centos7,支持fcfi)
yum install httpd php php-mysql mysql-server -y (centos6,默认不支持fcgi)
systemctl start httpd mariadb
ss -ntl #查看端口80、3306是否开启
mysql_secure_installation #数据库安全初始化

测试PHP连接mysql数据库

[root@centos7 html]# pwd
/var/www/html
[root@centos7 html]# vi index.php 
<?php
$mysqli=new mysqli("172.18.253.7","wpuser","123456");
if(mysqli_connect_errno()){
echo "连接数据库失败!";
$mysqli=null;
exit;
}
echo "连接数据库成功!";
$mysqli->close();
?>

测试是否连接成功
然后登录数据库创建WordPress相关的数据库以及用户

MariaDB [(none)]> CREATE DATABASE wpdb;
MariaDB [(none)]> GRANT ALL ON wpdb.* TO wpuser@"172.18.%" IDENTIFIED BY "123456";

到WordPress官网下载压缩包解压到/var/www/html目录下重命名blog(也可以不重命名)

[root@centos7 html]# cp blog/wp-config-sample.php blog/wp-config.php
[root@centos7 html]# vi blog/wp-config.php
/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');

/** MySQL数据库用户名 */
define('DB_USER', 'wpuser');

/** MySQL数据库密码 */
define('DB_PASSWORD', '123456');

/** MySQL主机 */
define('DB_HOST', '172.18.253.7');

主要修改以上4项
然后访问172.18.253.7/blog就可以查看博客页面
WordPress虽然能打开主页但是无法点击进入帖子,可以进入后台修改以下设置

这里写图片描述

可以选择格式,我选择朴素可以使用,如果不行,可以试一下其他的格式

以单独进程方式和httpd结合(fcgi)

两种模式只能使用一种,以下示例直接在上面的示例修改

yum remove php -y #移除上面安装的PHP模块
yum install php-fpm -y
[root@centos7 ]# vi /etc/httpd/conf.d/fcgi.conf
DirectoryIndex index.php
ProxyRequests Off #关闭正向代理
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/var/www/html/$1 #开启fcgi反向代理
systemctl start php-fpm
systemctl restart httpd

注意:在HTTPD服务器上必须启用proxy_fcgi_module模块,充当PHP客户端,//前面的/相对于后面的/var/www/html路径而言。后面的$1是指前面的/(.*.php)。

httpd –M |grep fcgi
cat /etc/httpd/conf.modules.d/00-proxy.conf

fcgi模式下虚拟主机配置

mv /etc/httpd/conf.d/fcgi.conf /etc/httpd/conf.d/fcgi.conf.bak #配置fcgi的配置文件留一个就可以
vim /etc/httpd/conf.d/vhosts.conf
DirectoryIndex index.php
<VirtualHost *:80>
ServerName www.a.com
DocumentRoot /app/web
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/web/$1
<Directory "/app/web/">
Options None
AllowOverride None
Require all granted
</Directory>
</VirtualHost>

systemctl restart httpd #重启httpd服务

在/etc/hosts文件里添加FQDN和IP的对应关系,如果有域名就不用修改了,启用虚拟主机以前的blog就不能访问啦,可以把配置恢复或者拷贝blog目录到/app/web目录下

出现的问题
(1) 要添加数据库root密码,如果不添加root密码PHP无法连接数据库
(2) 访问 http://服务器IP/blog WordPress无法连接数据库,仔细检查下用户名、密码、数据库是否正确,最可能错误的是数据库主机,创建账号的时候指定哪个用户从哪个主机登录,我们上面这个允许wpuser从172.18.0.0这个网段登录,所以即使数据库就在本地也只能写本地IP地址,不能写localhost,如果想写可以再添加允许wpuser从本地登录。
(3) 注意防火墙和selinux问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值