一、简介
WordPress是一款能建立出色网站、博客或应用的开源软件。其设计美观、功能强大,同时开源免费。
35%的网站都在使用WordPress,小到兴趣博客,大到新闻网站(官网数据)。
二、环境准备
- 系统: centos7
- LAMP Centos7 + Apache2.4 + php5.6 + mysql5.7 + phpMyAdmin4.8.3
- LNMP Centos7 + Nginx 1.13.7 + php5.6 + mysql5.7 + phpMyAdmin4.8.3
注意事项
Nginx和Apache两者在不修改默认配置时,均占用80端口,因而不能共存,端口冲突。本次安装采用Apache作为web服务。
有LAMP、LNMP的一键安装集成环境,也可以自行安装,为深入学习环境安装、命令操作、软件配置等,本次安装采用自行安装方式安装环境。
系统升级
如需升级系统已安装的包、软件、内核等,可使用如下命令升级。
yum -y update
AI 代码解读
软件卸载
如操作系统中安装有Apache、php、php相关插件库如php-fpm、php-pdo、php-mysql,mysql等软件,则需要先自行卸载,或者准备一个纯洁系统,以备后用。
三、安装apache
安装apache
yum -y install httpd
AI 代码解读
注意:
该方法安装完毕后,Apache配置文件路径为 /etc/httpd/conf/httpd.conf
可使用命令查看Apache服务状态
service httpd status
AI 代码解读
或者
systemctl status httpd.service
AI 代码解读
开启服务
systemctl start httpd.service
AI 代码解读
关闭服务
systemctl stop httpd.service
AI 代码解读
重启服务
systemctl restart httpd.service
AI 代码解读
设置开机启动
systemctl enable httpd.service
AI 代码解读
防火墙相关操作
注意,这里需要用到一些防火墙的相关操作,主要命令如下,以供参考。
#开启防火墙
systemctl start firewalld.service
#关闭防火墙
systemctl stop firewalld.service
#防火墙状态
systemctl status firewalld.service
#重启防火墙
firewall-cmd --reload
#查看端口的开放情况
firewall-cmd --list-all
AI 代码解读
开启80端口
由于我们安装了Apache服务,后续要使用80端口,所以需要防火墙放开80端口权限控制,而不是粗暴的直接关闭防火墙。
配置防火墙使得HTTP流量、HTTPS流量能够顺利通过防火墙,并阻挡其他可疑流量
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --add-port=80/tcp --permanent
AI 代码解读
注意:参数--permanent代表永久有效,不加这此参数的话,防火墙重启后之前所做配置就失效了
1:修改系统防火墙配置文件,在第五行配置中增加允许80端口监听外来ip
iptables -I INPUT 5 -i eth0 -p tcp --dport 80 -j ACCEPT
AI 代码解读
2:查看配置文件的内容,
看到刚刚加进去的内容
iptables --line -vnL
AI 代码解读
访问
安装完成之后,访问Apache服务,出现默认首页,说明安装成功。
如出现如图所示界面,则代表Apache服务安装成功。注意两个红色方框所圈示内容,/var/www/html为Apache服务页面所在路径。/etc/httpd/conf.d/welcom.conf可配置欢迎页相关内容。
四、安装php
安装php
1 换源
由于wordpress5.2.3需要PHP7.0以上版本,Centos7.4标准环境只提供到5.4版本,我们需要更换rpm源来实现安装PHP7.0以上版本。
在terminal执行以下命令
#CentOs 7.X:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
AI 代码解读
2安装
安装PHP7.2及相关插件
yum install -y php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml php72w-ldap php72w-mcrypt
AI 代码解读
3 测试
php -v
AI 代码解读
环境安装到此阶段,php环境已基本安装完毕,可测试是否可用。
注意前文提到的关键路径/var/www/html,在此目录下创建info.php文件,并编辑内容。
vim /var/www/html/info.php
AI 代码解读
文件内容如下:
<!DOCTYPE html>
<html>
<body>
<?php
phpinfo();
?>
</body>
</html>
AI 代码解读
重启
systemctl restart httpd.service
AI 代码解读
电脑端浏览器输入http://ip/info.php,会出现php的相关配置信息,即可代表环境安装成功。
五、安装MySQL
添加源
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
#或
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
AI 代码解读
安装
yum -y install mysql-community-server
AI 代码解读
查找默认密码
安装完成之后,安装程序为root 生成了一个默认密码,该密码输出到了 /var/log/mysqld.log 文件中,可以通过如下方式找到该日志文件中的root 用户默认密码,进而可以登录mysql数据库进行后续其它配置操作。
# 启动Mysql
systemctl start mysqld
# 查找默认密码
grep 'temporary password' /var/log/mysqld.log
AI 代码解读
输出结果如下:
配置mysql
登录
mysql -u root -p onlM*Lt=3lx5 //刚才查询的
AI 代码解读
然后输入密码即可进入mysql控制台
修改默认密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
或
set password for 'root'@'localhost'=password('new password');
AI 代码解读
mysql5.7 版本默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 错误。
开启远程访问权限:
use mysql;
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;
#查看
select host,user from user;
exit;
AI 代码解读
开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
#重新加载防火墙
firewall-cmd --reload
AI 代码解读
此时,远端已可以通过root用户访问mysql服务器,本地亦可以通过 Navicat等客户端工具连接。
六、创建配置WordPress数据库
登入mysql
mysql -u root -p
AI 代码解读
输入root账户密码即可进入
创建wordpress数据库
建立wordpress数据库
CREATE DATABASE wordpressdb;
AI 代码解读
创建wordpress数据库账户&&设置密码
CREATE USER 用户名@localhost IDENTIFIED BY '密码';
#CREATE USER wordpress@localhost IDENTIFIED BY '密码';
AI 代码解读
将”用户名”替换成你自己的用户名;将”密码”替换成你自己的密码;记下用户名和密码
授予wordpress数据库账户在wordpress数据库上所需权限
授予权限
GRANT ALL PRIVILEGES ON 数据库名.* TO 用户名@localhost;
#GRANT ALL PRIVILEGES ON wordpressdb.* TO wordpress@localhost;
刷新数据库缓存
FLUSH PRIVILEGES;
退出数据库
exit
AI 代码解读
七、安装wordpress
WordPress官网下载安装源码,也可以在中文官网下载中文版:https://cn.wordpress.org/download/。
下载最新wordpress版本
使用wget下载最新wordpress
wget http://wordpress.org/latest.zip
AI 代码解读
解压文件,并且将其复制到/var/www/html目录下
#解压文件
unzip -q latest.zip
#复制 wordpress文件夹下所有文件到html目录下
cp -rf wordpress/* /var/www/html/
#修改文件夹权限
赋予apache对相关文件夹的权限
修改文件夹权限
chown -R apache:apache /var/www/html/
chmod -R 755 /var/www/html/
mkdir -p /var/www/html/wp-content/uploads
chown -R :apache /var/www/html/wp-content/uploads
AI 代码解读
编辑WordPress配置文件
编辑配置文件
cd /var/www/html
cp wp-config-sample.php wp-config.php
vim wp-config.php
找到define(‘DB_NAME’, ‘wordpressdb’);
将 wordpressdb 修改为你创建的wordpress数据库名
找到define(‘DB_USER’, ‘wordpressuser’);
将 wordpressuser 修改为你创建的数据库用户名
找到define(‘DB_PASSWORD’, ‘123456’);
将 123456 修改你创建数据库用户的密码
输入:wq!保存
重启相关服务
重启相关服务
systemctl restart httpd.service
systemctl restart mysqld.service
systemctl start mysqld.service
systemctl stop mysqld.service
进入Web页面设置
访问http://你的域名/wp-admin
进入wordpressWEB安装配置界面,按照要求设置用户名密码,就可完成wordpress最后设置
安装完成