在开始本文前,我假定你已经安装好了nginx、php-fpm和mariaDB(或mysql)。它们的安装过程可参考我以前的文章。

1. 安装EPEL(Extra Packages for Enterprise Linux ):

# yum install epel-release

2. 安装wordpress:

# yum install wordpress

安装好的wordpress在/usr/share/wordpress.

(以下步骤参考wordpress官网www.wordpress.org)

3. 配置文件在/etc/wordpress/wp-config.php,在/usr/share/wordpress下也有该文件的link

4. 在修改上述配置之前,我们需要先配置好数据库。

4.1 开启mariadb server:

# systemctl enable mariadb

# systemctl start mariadb

4.2 设置mariadb的root密码:

#  mysqladmin -u root password your_mariadb_password

4.3 建立数据库和操作员:

# create database your_database_name;

# grant all privileges on your_database_name.* to "operator_name"@"localhost" identified by "operator_passwd";

# flush privileges;

# exit

5. 我们使用nginx,因此将wp-config.php的读权限赋予nginx:

# chgrp nginx wp-config.php

6. 修改wp-config.php:

修改DB_NAME、DB_USER、DB_PASSWORD;

使用wordpress的在线salt generator产生Security Keys,替换原文件里的相应内容;

(salt generator: https://api.wordpress.org/secret-key/1.1/salt/)

9. 将wordpress安装目录复制到/usr/share/nginx/blog,原/usr/share/wordpress作为备份。复制完成后,删除新目录里wp-config.php的link,以文件形式从原始位置(/etc/wordpress/wp-config.php)重新复制一份。注意该文件权限应该不允许一般用户进行读操作(660或640);

10. 将blog目录的own和group修改为网站文件所有者(一般为上传网站的FTP账号)(-R);

说明1:此处假定你的php-fpm按照我前面的blog进行了配置,使用了FTP账号作为php-fpm的user/group。

11. 执行https://your_web_site/blog/wp-admin/install.php

说明:因为前面我们已经手工修改了wp-config.php,所以此处不需要setup-config.php。

12. 配置blog用户名和密码,注意和上面的db用户不是一回事

13. 如果上一步submit后出现403,可能是没有将index.php加入nginx的默认首页,简单添加一下到location /就好了

14. 然后就可以看到Dashboard了。

15. 安全说明

1) 对于php文件,nginx并不会读取文件内容,而是将文件位置和名称直接扔给php-fpm,所以很多博客上说的“nginx需要对php有读权限”的说法是错误的。这是一个影响网站安全的重要的点。只有在nginx不需要php读权限的基础上,我们才可以将wp-config.php的权限设置为600,仅将该文件读权限开放给php-fpm,而nginx只需要文件所在目录的读权限就可以了。

16. 更改语言

在wp-content目录下新建一个目录languages,将你从wordpress.org下载得到的中文语言包解压后的文件放到该目录。回到browser,在dashboard里选择语言并save。

17. 低配置服务器上的优化

17.1  /etc/my.cnf

在[mysqld]下增加一行:

performance_schema=off

17.2 /etc/my.cnf.d/server.cnf

在[mysqld]下增加:

innodb_buffer_pool_size = 32M
          key_buffer_size = 4M

# 说明:很多文章都会让你把innodb_buffer_pool_size 设置为服务器内存的80%,但这是以讹传讹的做法。按mariadb官方wiki/FAQ,仅当服务器内存>4G时,将innodb_buffer_pool_size设置为空闲内存(跑了其他所有服务,单单没有开maridb的情况下的free memory,而不是服务器配置内存!)的80%。对于低配置服务器,该值应该比默认值(128M)更小。key_buffer_size的值没有查到建议值,这里我按同等比例减小。

17.3 /etc/php-fpm.d/www.conf

pm.max_children = 10

pm.start_servers = 2

pm.max_spare_servers = 5

CentOS 7安装WordPress的更多相关文章

  1. 于CentOS 6 安装 Wordpress

    1.两种方式给Wordpress 首先,你可以去wordpress最新的官方网站看看wordpress多少下载.例wordpress 3.9.1下载地址: http://cn.wordpress.or ...

  2. CentOS 7 安装 WordPress,PHP,Nginx,MySQL(MariaDB),FTP

    主要资料参考:https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-st ...

  3. centos 快速安装wordpress

    1.两种方式得到Wordpress 首先你可以去wordpress官方网站看下最新的wordpress的下载地址多少.比如wordpress 3.9.1的下载地址是: http://cn.wordpr ...

  4. CentOS 7 安装wordpress

    1.安装php 要安装php 7,必须使用下面的命令在Centos7系统上安装并启用epel和remi存储库. 输入一下代码, yum install http://rpms.remirepo.net ...

  5. CentOS上安装WordPress搭建博客平台

    前两天在服务器上搭建了AMP,今天试着在上面安装了一个WordPress(中文:http://cn.wordpress.org/,英文:http://wordpress.org/),我安装的是英文最新 ...

  6. centos 7 安装WordPress的参考博文

    安装方法: https://www.cnblogs.com/flankershen/p/7476415.html 安装完,测试不成功的解决办法: https://blog.csdn.net/u0104 ...

  7. centos下安装wordpress

    https://www.jianshu.com/p/2439dc2187b2 https://blog.csdn.net/liuhelong/article/details/79924014

  8. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  9. 在centos 6.9安装wordpress,浏览器不能访问问题

    在centos 6.9安装wordpress浏览器访问先出现403错误,然后提示access denied nginx错误打印FastCGI sent in stderr: "Unable ...

随机推荐

  1. SASS 简单实用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 用VSCode的debugger for chrome插件调试服务器项目的配置方式

    项目放到tomcat服务器启动起来(以tomcat服务器为例). 配置launch 把谷歌浏览器彻底关闭!(要彻底) 打断点 点左侧的调试 点刷新!(这一步也需要)

  3. 【HTML入门基础知识】从零开始,我要加油!---致HTML

    前言: 今天来和大家分享一下近期自己整理的HTML笔记,希望会对你的学习有所帮助! ***本章关键词:HTML头部格式:常见的块级标签:常见的行级标签:表格:表单. 一.HTML头部格式 一.HTML ...

  4. Win10系列:C#应用控件基础12

    TextBlock控件 TextBlock控件是应用程序开发过程中经常使用的控件之一,它的主要功能是显示一段只读的文本内容.开发者可以使用TextBlock控件来显示提示信息,还可以根据需求将显示的提 ...

  5. java子类继承父类的方法(代码简略版)

    父类:public class Subjects { public void b() { System.out.println("学科"); } public void a(){ ...

  6. 复制目录及其子目录下所有文件DOC

    echo 开始同步代码 set src_home=F:\work\sign\Bonade-Sign set dest_home=F:\work\testGit\sign5\Bonade-Sign se ...

  7. PHP输出中文乱码问题解决

    在php文件的最上面加上下面的语句: header('Content-Type: text/html; charset=utf-8');   如下图:

  8. 使用element-ui 遇到的问题

    Pagination 分页 在使用分页的时候,每次切换pageSize的时候,需要把current-page置为1 重新加载数据. 但是当current-page !== 1的时候,修改current ...

  9. h5页面 内嵌h5页面遇到的问题

    1.input框无法获取焦点输入内容 input { -webkit-user-select: auto; } 2.div里面放img标签有3px的距离 div { font-size: 0; } i ...

  10. Lua IDE工具-Intellij IDEA+lua插件配置教程(Chianr出品)

    Lua 编译工具IDE-Intellij IDEA 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Ch ...