基于RPM包的LAMP搭建
1. 配置概要:
a) 172.16.20.10主机运行httpd+php服务(php为模块工作模式)
b) 配置两台虚拟主机:wordpress个人博客系统,PHPmyadmin远程控制mysql
c) 172.16.20.11主机运行mariadb服务(mysql)
2. 配置流程:
a) 首先配置172.16.20.10主机:http服务
i. 安装程序
1. #yum install httpd php php-mysql php-mbstring
2. Httpd提供web服务
3. Php 安装后自动编译为httpd的模块,用于处理动态资源php脚本
4. Php-mbstring:此程序包为phpMyAdmin远程控制mysql所必须的
5. Php-mysql:php驱动mysql的库文件程序包
b) Rpm包安装完成之后,进入下一步的配置阶段:
i. 添加虚拟主机(基于FQDN)
1. # Vim /etc/httpd/conf.d/vhost.conf文件
添加如下内容,基于FQDN的虚拟主机配置
ServerName # 很重要,基于FQDN的虚拟主机必须要有主机名
DocumentRoot"/www/host/htdoc" # 虚拟主机根目录,可指定路径
OptionsFollowSymLinks # FollowSymLinks 表示可以访问符号连接资源
require allGranted # 目录的权限设置
ServerNamewww.myadmin.com
DocumentRoot"/www/host2/htdoc"
OptionsFollowSymLinks
require allGranted
c) 为虚拟主机创建配置文件中定义的资源目录
i. # mkdir/www/{host,host2}/htdoc
d) 添加测试资源
i. # vim /www/host/htdoc/index.php
$conn =mysql_connect('172.18.17.8','admin','admin'); # ip填写mysql主机ip
if($conn) # 用户为mysql所授权的用户,密码空
echo "DATABASEConnet OK";
else
echo"DATABASE Connet Failure";
?>
# 测试php是否正常工作的php代码
phpinfo(); #此函数调用会显示php的详细信息
?>
e) 配自豪httpd主配置文件
#vim /etc/httpd/conf/httpd.conf
# 找到DocumentRoot"/var/www/html" #将其注释掉,一般使用虚拟机都要注释掉,避免冲突 #DocumentRoot "/var/www/html"
# 添加php主页索引
DirectoryIndexindex.php index.html # 将index.php添加在前头,这样就会默认访问此类资源索引
# 取消服务器名称注释
f) 启动服务,测试是否正常
# 检测配置文件语法有没有错误
# httpd -t # 语法无误启动服务
# systemctl starthttpd.service 打开网页查看服务是否正常
http服务测试正常,php模块也能正常工作,但是,如你所见,mysql的连接是失败,因为我们还mysql的服务器还没有配置
g) 获取wordpress和phpmyadmin
wordpress配置:
# 下载并解压至/www/host/htdoc
#cd 到wordpress目录
#复制配置文件wp-config-sample.php为wp-config.php
#cpwp-config-sample.php wp-config.php
#编辑配置文件
#vimwp-config.php
define('DB_NAME','wpdb'); # 此填写mysql所要授权数据库的名字(后面会配置)
/**MySQL数据库用户名 */
define('DB_USER','wpuser'); # 填写数据库的用户名
/**MySQL数据库密码 */
define('DB_PASSWORD','wppasswd'); # 填写数据的密码
/**MySQL主机 */
define('DB_HOST','172.18.17.8'); # 填写mysql主机的ip
/**创建数据表时默认的文字编码 */
define('DB_CHARSET','utf8');
/**数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE','');
phpmyadmin配置:
# 将包下载并解压至/www/host2/htdoc
#cd 到 文件目录
# 创建符号连接
#ln -s phpMyAdmin-4.4.14.1-all-languages myadmin
#ls
index.php phpMyAdmin-4.4.14.1-all-languages
myadmin phpMyAdmin-4.4.14.1-all-languages.zip
#cd至myadmin 目录里面,修改配置文件
#cp config.sample.inc.php config.inc.php
#编辑配置文件
#vim config.inc.php
$cfg['blowfish_secret']= 'o71mI9rimj6syc00fT3g'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
#单引号填写随机密码,可使用openssl rand -base64 15(密码长度)生成
/*
*Servers configuration
*/ $i = 0;
/* * First server
*/
$i++;
/*Authentication type */
$cfg['Servers'][$i]['auth_type']= 'cookie';
/*Server parameters */
$cfg['Servers'][$i]['host']= '172.18.17.8'; # 数据库主机ip
$cfg['Servers'][$i]['connect_type']= 'tcp';
$cfg['Servers'][$i]['compress']= false;
$cfg['Servers'][$i]['AllowNoPassword']= false;
h) 172.16.20.11主机配置:mysql服务
# yuminstall mariadb-server 安装mysql
# systemctlstart mariadb 启动mysql服务
# ss -tnl 查看监听端口,3306为默认端口
执行安全操作
#mysql_secure_installation
强烈建议在mysql安装完成后执行安全操作,这样使得数据库更安全
创建所需数据库并授权
# mysql -uroot -p
Enterpassword:
Welcome to the MariaDBmonitor. Commands end with ; or \g.
Your MariaDB connectionid is 66
Server version:5.5.44-MariaDB MariaDB Server
Copyright (c) 2000,2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h'for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>CREATE DATABASE wpdb; # 创建wordpress的数据库
Query OK, 1 rowaffected (0.02 sec)
# 授权wordpress数据库
MariaDB [(none)]>GRANT ALL ON wpdb.* TO wpuser@172.16.20.10 IDENTIFIED BY 'wppasswd';
Query OK, 0 rowsaffected (0.01 sec)
#授权远程访问主机(phpMyadmin)
MariaDB [(none)]> GRANTALL ON *.* TO admin@'172.16.20.10' IDENTIFIED BY 'admin';
Query OK, 0 rowsaffected (0.01 sec)
3. 支持所有配置基本完毕,验证结果
验证数据库联通
4. 查看wordpress是否正常