WordPress 搭建

  1. 环境准备 – 数据库(mariadb)

参考:https://www.cnblogs.com/river2005/p/6813618.html
CentOS7下使用yum安装MariaDB
CentOS 6 或早期的版本中提供的是 MySQL 的服务器/客户端安装包,但 CentOS 7 已使用了 MariaDB 替代了默认的 MySQL。MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

Linux下安装MariaDB官方文档参见:https://mariadb.com/kb/zh-cn/installing-mariadb-with-yum/

全部删除MySQL/MariaDBMySQL 已经不再包含在 CentOS 7 的源中,而改用了 MariaDB;

 1.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包: 
如果存在,使用rpm -e --nodeps mariadb-*全部删除:
[root@localhost ~]# rpm -qa | grep mariadb
[root@localhost ~]# rpm -e mysql-*

2.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:
如果存在,使用yum remove mysql mysql-server mysql-libs compat-mysql51全部删除;
[root@localhost ~]# yum remove mysql mysql-server mysql-libs compat-mysql51

3.开始新的安装, 创建MariaDB.repo文件
vi /etc/yum.repos.d/MariaDB.repo
插入以下内容:
# MariaDB 10.2.4 CentOS repository list - created 2017-05-05 16:13 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

4.运行安装命令安装MariaDB
[root@localhost ~]# yum -y install MariaDB-server MariaDB-client

5. 安装成功之后启动MariaDB服务。
systemctl start mariadb #启动服务 systemctl enable mariadb #设置开机启动 systemctl restart mariadb #重新启动 systemctl stop mariadb.service #停止MariaDB

6. 进行MariaDB的相关简单配置,使用mysql_secure_installation命令进行配置。

7.配置MariaDB的字符集
  查看/etc/my.cnf文件内容,其中包含一句!includedir /etc/my.cnf.d 说明在该配置文件中引入/etc/my.cnf.d 目录下的配置文件。
  
1)使用vi server.cnf命令编辑server.cnf文件,在[mysqld]标签下添加
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
如果/etc/my.cnf.d 目录下无server.cnf文件,则直接在/etc/my.cnf文件的[mysqld]标签下添加以上内容。
2)文件/etc/my.cnf.d/client.cnf
vi /etc/my.cnf.d/client.cnf
在[client]中添加
default-character-set=utf8
3)文件/etc/my.cnf.d/mysql-clients.cnf
vi /etc/my.cnf.d/mysql-clients.cnf
在[mysql]中添加
default-character-set=utf8
 全部配置完成,重启mariadb
systemctl restart mariadb
之后进入MariaDB查看字符集
mysql> show variables like "%character%";show variables like "%collation%";
授予权限并且可以授权
mysql>grant all privileges on *.* to username@'hostname' identified by 'password' with grant option;

2. 环境准备 – php

1、由于linux的yum源不存在php7.x,所以我们要更改yum源:
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
 2、yum查询安装php71w
yum search php71w
3、yum 安装php71w和各种拓展,选自己需要的即可。
yum install php71w php71w-cli php71w-common php71w-devel php71w-embedded php71w-fpm php71w-gd php71w-mbstring php71w-mysqlnd php71w-opcache php71w-pdo php71w-xml

php -v //就可以看到PHP版本信息了。
4. 修改配置文件
编辑PHP的配置文件,/etc/php.ini,注意去掉分号注释
vim /etc/php.ini
  将 ;cgi.fix_pathinfo=1 改为 cgi.fix_pathinfo=0
编辑PHP-FPM配置文件
vim /etc/php-fpm.d/www.conf
  将
  user = nobody
  group = nobody   
 改为
  user = nginx
  group = nginx
 前提是已经创建了nginx用户和nginx组。如果没有创建方法:
groupadd -r nginx
useradd -r -g nginx nginx
5、启动PHP—FPM
systemctl start php-fpm
6、设置开机启动
systemctl enable php-fpm
7,确保Nginx配置文件修该之后,重启Nginx
systemctl restart nginx
8、在/usr/share/nginx/html/目录下创建info.php
    内容如下:
   <?php phpinfo();?>
然后在浏览器访问这个文件, 看看是否成功

3. 环境准备 – nginx

安装nginx
yum install nginx
修改nginx 配置
vim /etc/nginx/nginx.conf
去掉默认的server配置
在/etc/ngnix/conf.d/下,新增一个配置文件wordpress.conf
内容为:

server {
listen 80 default;
server_name blog.javastone.net blog.caul.com.cn;
index index.php index.html index.htm index.jsp;
root /usr/local/wordpress;
error_page 404 /404.html; location = /40x.html { }
  error_page 500 502 503 504 /50x.html; location = /50x.html { }
  location ~ \.php$ {
  try_files $uri =404;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params; 
  }
  location / {
  index index.php;
  }
  access_log /data/logs/nginx/blog.log;
}

4. 部署

参考官方文档, 主要是修改配置文件wp-config.php

/** WordPress数据库的名称 */
define('DB_NAME', '数据库');
/** MySQL数据库用户名 */
define('DB_USER', '用户');
/** MySQL数据库密码 */
define('DB_PASSWORD', '密码');
/** MySQL主机 */
define('DB_HOST', '主机IP');

去https://api.wordpress.org/secret-key/1.1/salt/ 拿到一个key,
替换define中的AUTH_KEY等信息
define('AUTH_KEY', '');
define('SECURE_AUTH_KEY', '');
define('LOGGED_IN_KEY', '');
define('NONCE_KEY', '\');
define('AUTH_SALT', '');
define('SECURE_AUTH_SALT', '');
define('LOGGED_IN_SALT', '');
define('NONCE_SALT', '');*/
define('AUTH_KEY', '');
define('SECURE_AUTH_KEY', '');
define('LOGGED_IN_KEY', '');
define('NONCE_KEY', '\');
define('AUTH_SALT', '');
define('SECURE_AUTH_SALT', '');
define('LOGGED_IN_SALT', '');
define('NONCE_SALT', '');

留下评论

电子邮件地址不会被公开。 必填项已用*标注