千家信息网

CentOS7LAMP部署流程

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,(1)配置概要:1、 172.18.17.7主机运行httpd+php服务(php为模块工作模式)配置两台虚拟主机:wordpress个人博客系统、PHPmyadmin远程控制mysql2、172.1
千家信息网最后更新 2026年11月02日CentOS7LAMP部署流程

(1)配置概要:
1、 172.18.17.7主机运行httpd+php服务(php为模块工作模式)
配置两台虚拟主机:wordpress个人博客系统、PHPmyadmin远程控制mysql

2、172.18.17.8主机运行mariadb服务(mysql)


(2)配置流程:

首先配置172.18.17.7主机:http服务
1、安装程序:

[root@johnson's linux ~]# yum install httpd php php-mysql php-mbstring======================================================================================== Package               Arch            Version                      Repository     Size========================================================================================Installing: httpd                 x86_64          2.4.6-40.el7.centos          base          2.7 M php                   x86_64          5.4.16-36.el7_1              base          1.4 M php-mbstring          x86_64          5.4.16-36.el7_1              base          503 k php-mysql             x86_64          5.4.16-36.el7_1              base           99 kTransaction Summary=======================================================================================

httpd:提供web服务

php:安装后自动编译为httpd的模块,用于处理动态资源php脚本

php-mbstring:此程序包为phpMyAdmin远程控制mysql所必须的

php-mysql:php驱动mysql的库文件程序包


2、服务配置

包都安装完成之后,进入下一步的配置阶段:

(1)添加虚拟主机:(基于FQDN)

虚拟主机有三种配置方式:一种是基于不同ip,相同端口(80),二是相同IP不同端口,三是同一IP不同主机名(FQDN),不管何种配置方式,最后解析到的主机只有一台,但是在请求报文首部信息会有不同!以下,仅演示基于FQDN的配置方式

编辑:/etc/httpd/conf.d/vhost.conf文件

[root@johnson's linux ~]# vim /etc/httpd/conf.d/vhost.conf # 添加如下内容,基于FQDN的虚拟主机配置  # 固定语法 可忽略大小写    ServerName   # 很重要,基于FQDN的虚拟主机必须要有主机名      DocumentRoot "/www/host/htdoc" # 虚拟主机根目录,可指定路径    # 对虚拟主机根目录的权限设置    Options FollowSymLinks    # FollowSymLinks  表示可以访问符号连接资源    require all Granted     # 目录的权限设置                   ServerName www.myadmin.com    DocumentRoot "/www/host2/htdoc"    Options FollowSymLinks    require all Granted

Options:为个目录的选项,可以指定多个特性

如:Index,启动资源索引,其作用是在用户在访问指定的URL不存在时,返回web资源索引,此选项

非常危险,不建议启用,否则源码则会web源码暴露,后果很严重

访问权限设定:

Require all Granted/deny, Granted表示允许,all表示所有,deny表示拒绝

需要注意的是:CentOS7是默认拒绝所有主机访问DocumentRoot的资源,所以,配置虚拟主机必须要配置此先参数


(2)为虚拟主机创建配置文件中定义的资源目录并

[root@johnson's linux ~]# mkdir/www/{host,host2}/htdoc


(3)添加测试资源

[root@johnson's linux ~]# vim /www/host/htdoc/index.php# 前面这段是测试php与mysql连通性的PHP代码# 测试php是否正常工作的php代码


(4)配置httpd主配置文件

编辑:/etc/httpd/conf/httpd.conf

[root@johnson's linux ~]# vim /etc/httpd/conf/httpd.conf# 找到 DocumentRoot "/var/www/html" ,#将其注释掉,一般使用虚拟机都要注释掉,避免冲突#DocumentRoot "/var/www/html"# 添加php主页索引DirectoryIndex index.php index.html # 将index.php添加在前头,这样就会默认访问此类资源索引# 取消服务器名称注释

(5)启动服务,测试是否正常

# 检测配置文件语法有没有错误[root@johnson's linux ~]# httpd -t# 语法无误启动服务[root@johnson's linux ~]# systemctl start httpd.service

打开网页查看服务是否正常


http服务测试正常,php模块也能正常工作,但是,如你所见,mysql的连接是失败,因为我们还mysql的服务器还没有配置


(5)获取wordpress和phpmyadmin

博主的是在局域网中ftp服务器中下载的

wordpress配置:

# 下载并解压至/www/host/htdoc# cd 到wordpress目录 ,配置文件如下[root@johnson's linux wordpress]# lsindex.php        wp-blog-header.php    wp-cron.php        wp-mail.phplicense.txt      wp-comments-post.php  wp-includes        wp-settings.phpreadme.html      wp-links-opml.php     wp-signup.phpwp-activate.php  wp-config-sample.php  wp-load.php        wp-trackback.phpwp-admin         wp-content            wp-login.php       xmlrpc.php# 复制配置文件以上的 wp-config-sample.php 为 wp-config.php[root@johnson's linux wordpress]# cp wp-config-sample.php  wp-config.php# 编辑配置文件[root@johnson's linux wordpress]# vim wp-config.php// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** ///** WordPress数据库的名称 */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 到 文件目录# 创建符号连接[root@johnson's linux htdoc]# ln -s phpMyAdmin-4.4.14.1-all-languages myadmin[root@johnson's linux htdoc]# lsindex.php  phpMyAdmin-4.4.14.1-all-languages myadmin    phpMyAdmin-4.4.14.1-all-languages.zip  #cd 至myadmin 目录里面,修改配置文件[root@johnson's linux htdoc]# cp config.sample.inc.php config.inc.php#编辑配置文件[root@johnson's linux htdoc]# 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;



172.18.17.8主机配置:mysql服务

(1)yum安装程序

[root@johnson's linux ~]# yum install mariadb-server========================================================================================Installing: mariadb-server               x86_64      1:5.5.44-2.el7.centos         base       11 MInstalling for dependencies: mariadb                      x86_64      1:5.5.44-2.el7.centos         base      8.9 M perl-Compress-Raw-Bzip2      x86_64      2.061-3.el7                   base       32 k perl-Compress-Raw-Zlib       x86_64      1:2.061-4.el7                 base       57 k perl-DBD-MySQL               x86_64      4.023-5.el7                   base      140 k perl-DBI                     x86_64      1.627-4.el7                   base      802 k perl-IO-Compress             noarch      2.061-2.el7                   base      260 k perl-Net-Daemon              noarch      0.48-5.el7                    base       51 k perl-PlRPC                   noarch      0.2020-14.el7                 base       36 kTransaction Summary========================================================================================

一大推依赖包,只要有yum在且yum源配置没有问题,可以轻松解决


(2)启动服务,执行安全安装操作

[root@johnson's linux ~]# systemctl start mariadb# 查看监听端口,3306为mariaDB的默认监听端口[root@johnson's linux ~]# ss -tnlState      Recv-Q Send-Q Local Address:Port               Peer Address:Port              LISTEN     0      50               *:3306                         *:*                  LISTEN     0      128              *:22                           *:*                  LISTEN     0      128             :::22                          :::*   执行安全安装操作  [root@johnson's linux ~]# mysql_secure_installation Setting the root password ensures that nobody can log into the MariaDBroot user without the proper authorisation.Set root password? [Y/n] y  # 设置管理员登陆秘密(此密码和linux系统的root没关系)New password: Re-enter new password:    # 输入密码即可Password updated successfully!Reloading privilege tables.. ... Success!Remove anonymous users? [Y/n] y  # 是否移除匿名用户(在执行安全安装之前不需要密码登陆) ... Success!                    # 允许匿名登陆时很危险的,建议移除Disallow root login remotely? [Y/n] n  # 是否不允许管理员账号远程登陆,一般情况下建议不允许 ... skipping.                        Remove test database and access to it? [Y/n] y # 移除测试数据库 - Dropping test database...  ... Success! - Removing privileges on test database... ... Success!Reloading the privilege tables will ensure that all changes made so farwill take effect immediately.Reload privilege tables now? [Y/n] y    # 重载权限表 ... Success!Cleaning up...All done!  If you've completed all of the above steps, your MariaDBinstallation should now be secure.Thanks for using MariaDB!

强烈建议在mariaDB安装完成后执行安全安装操作,这样可以使得数据库更安全


(3)创建所需数据库并授权

[root@johnson's linux ~]# mysql -uroot -pEnter password: Welcome to the MariaDB monitor.  Commands end with ; or \g.Your MariaDB connection id is 66Server version: 5.5.44-MariaDB MariaDB ServerCopyright (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 row affected (0.02 sec)   # 授权wordpress数据库MariaDB [(none)]> GRANT ALL ON wpdb.* TO wpuser@172.18.17.7 IDENTIFIED BY 'wppasswd';Query OK, 0 rows affected (0.01 sec)#授权远程访问主机(phpMyadmin)MariaDB [(none)]> GRANT ALL ON *.* TO admin@'172.18.17.7' IDENTIFIED BY 'admin'; Query OK, 0 rows affected (0.01 sec)


(4)支持所有配置基本完毕:验证结果

1、验证数据库联通


2、查看wordpress是否正常

不知为何,我的phpmyadmin显示不大正常,能跑起来就行!配置到此结束!

最后补充一下:
phpMyadmin常见错误:
1.缺少mbstring插件

yum 安装php-mbstring即可

2.丢失session目录

一般 在/var/lib/php/session ,没有则创建即可





配置 主机 数据 服务 数据库 文件 虚拟主机 资源 密码 目录 测试 安全 不同 建议 权限 用户 程序 端口 索引 登陆 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 蓝思科技飞鸽互联网 广州百单互联网科技有限公司 麻工互联网科技 中国互联网科技发展 广州宏创互联网科技 未来的互联网科技 碳银互联网科技有限公司 火传媒上海互联网科技 互联网科技股午盘股票涨跌 深圳互联网科技怎么样 青岛中康互联网医疗科技有限公司 链环科技传统企业怎么转型互联网 南博望互联网科技有限公司 上海乐五互联网科技有限公司 福仕德教育科技互联网 互联网科技和医药行业 恒生科技指数 中概互联网 高科技和互联网的现代国家 山东亿川互联网科技有限责任公司 株洲百竞科技的互联网营销顾问 互联网科技园 唐信互联网科技 善班互联网科技有限公司 互联网科技ppt模板 上游互联网科技 花神(南京)互联网科技有限公司 互联网数据科技专业 南通创西澳互联网科技有限公司 科技互联网经济论坛 上海互联网科技园景观
0