之前有好多次搭建wordpress的经历,有在Ubuntu系统上,有在CentOS7.2系统上,但都是搭完还是稀里糊涂的,因为好多都是教程上照着敲的。这次好好出个教程,以便以后方便查看。
- 准备工作:CentOS7.4操作系统平台
首先,
关 闭 防 火 墙:systemctl stop firewalld
永久关闭防火墙:systemctl disable firewalld
关 闭selinux:setenforce
永久关闭selinux:vim /etc/sysconfig/selinux 使SELINUX=disable
搭建LNMP(Linux,Nginx,mysql,php),这个架构
准备好yum源,可以更换国内的yum源,如(163源,阿里源,网易源,或知名大学的源),见更换方法。
还有添加yum的拓展源,见添加方法。
准备好yum源后,开始安装
- 安装Nginx
#添加拓展源后才可以直接yum安装Nginx
yum -y install nginx
- 安装MySQL
这里需要说明一下,直接yum安装mysql的话安装的是MySQL的子产品mariadb,不过它既然是MySQL的子产品,那用法和本质都差不多,本人也没有过多研究,若始终中意MySQL的话那就执行下面操作:(这个是把MySQL的原rpm包调用,使得用yum可以直接安装MySQL,并替换原有的mariadb)
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-.noarch.rpm
yum -y install mysql-community-server
#下面这条命令是在安装MySQL后移除原rpm包的调用,因为安装了Yum Repository,以后每次yum操作都会自动更新,比较耗时,需要把这个卸载掉
yum -y remove mysql57-community-release-el7-.noarch
- 安装PHP
yum -y install php php-fpm php-mysql
OK,完成以上操作后LNMP架构就算安装好了,接下来配置:
- 配置Nginx
说明一下:
Nginx的配置文件是/etc/nginx/nginx.conf
Nginx的默认网站目录是/usr/share/nginx/html
Nginx的默认端口号是 80 端口
启动:systemctl start nginx
关闭:systemctl stop nginx
重启:systemctl restart nginx
设置开机自启:systemctl enable nginx
Nginx服务开启后访问一下效果:
实现Nginx支持PHP解析:
vim /etc/nginx/nginx.conf
#在server段里面添加以下内容:(注意不要把内容添加到server段内的其他段,这段相对于server段内的其他段独立)
if (-f $request_filename/index.html){
rewrite (.*) $/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
重启Nginx
然后开启php-fpm,nginx就可以访问php的页面了
测试一下:
在nginx的默认网站目录里写个php测试页
vim /usr/share/nginx/html/test.php test.php测试页内容
<? php phpinfo (); ?>
打开浏览器输入IP或localhost/test.php效果如下:
- 配置MySQL
开启MySQL服务:systemctl start mysqld
这种方法安装的MySQL,登录时需要在日志中找到密码: [root@localhost ~]# grep "password" /var/log/mysqld.log
输出结果第一行的localhost:后面的就是密码
登录后,需要修改MySQL的root登陆密码,这时候因为MySQL具备密码复杂性策略,不能随便设置密码,又得大小写字母,又得数字,又得符号,特麻烦,但安全,如果不想设置复杂的密码需要改动这些策略:
查看MySQL密码规则:show variables like 'validate_password%'; 如下:
我的已经更改过策略了,更改策略:
#密码的长度是由validate_password_length决定的
#密码的安全性是validate_password_policy决定的
mysql: set global validate_password_policy=;
mysql: set global validate_password_length=;
然后,再改密码: alter user 'root'@'localhost' identified by '你的新密码';
不要忘了咱们的目的,我们要搭建wordpress的,前面的内容有点繁琐了,但是有必要说一下,因为我做的时候好多不清楚就百度,问题里面套着问题,一层一层的,到最后自己本来要干什么都不知道了,完全懵逼,所以不要嫌啰嗦,一遍过去保证除去你很多疑难杂症。
All right ,让我们继续
wordpress是个博客系统,需要后台登录,然后进行操作的,所以需要给wordpress一套用户名和密码,当然,还有数据库。
登录MySQL
创建数据库:create database wordpress;
创建用户名:create user '用户名';
授予 权限:grant all privileges on wordpress.* to '用户名' identified by '密码';
刷新 权限:flush privileges
至此,MySQL设置完成
- 配置PHP
PHP不用怎么配置
只要弄完以上配置后确保php-fpm已经启动即可
- 配置wordpess
首先需要下载wordpress文件
#下载wordpress文件
wget http://wordpress.org/latest.zip
#解压lastest.zip,解压后文件夹名为wordpress
unzip latest.zip
#将解压后的wordpress文件夹放入Nginx的网站发布路径
mv wordpress /usr/share/nginx/html/
#给予权限
chmod -R /usr/share/nginx/html/wordpress
更改wordpress配置文件
#复制一份,当作备份cp /usr/share/nginx/html/wordpress/wp-config-sample.php /usr/share/nginx/html/wordpress/wp-config.php
#打开配置文件
vim /usr/share/nginx/html/wordpress/wp-config.php
更改以下内容:数据库名称,用户名和密码,如:
保存后,重启Nginx,mysql,php-fpm
打开浏览器,输入IP或localhost/wordpress,如:
至此,就可以自己设置了,因为时间有限,不保证所有步骤都正确,还望海涵,并多多指正,下一篇是关于Nginx修改默认网站发布路径的问题,还有wordpress汉化,欢迎浏览