CentOS 7安装WordPress
在开始本文前,我假定你已经安装好了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的更多相关文章
- 于CentOS 6 安装 Wordpress
1.两种方式给Wordpress 首先,你可以去wordpress最新的官方网站看看wordpress多少下载.例wordpress 3.9.1下载地址: http://cn.wordpress.or ...
- CentOS 7 安装 WordPress,PHP,Nginx,MySQL(MariaDB),FTP
主要资料参考:https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-st ...
- centos 快速安装wordpress
1.两种方式得到Wordpress 首先你可以去wordpress官方网站看下最新的wordpress的下载地址多少.比如wordpress 3.9.1的下载地址是: http://cn.wordpr ...
- CentOS 7 安装wordpress
1.安装php 要安装php 7,必须使用下面的命令在Centos7系统上安装并启用epel和remi存储库. 输入一下代码, yum install http://rpms.remirepo.net ...
- CentOS上安装WordPress搭建博客平台
前两天在服务器上搭建了AMP,今天试着在上面安装了一个WordPress(中文:http://cn.wordpress.org/,英文:http://wordpress.org/),我安装的是英文最新 ...
- centos 7 安装WordPress的参考博文
安装方法: https://www.cnblogs.com/flankershen/p/7476415.html 安装完,测试不成功的解决办法: https://blog.csdn.net/u0104 ...
- centos下安装wordpress
https://www.jianshu.com/p/2439dc2187b2 https://blog.csdn.net/liuhelong/article/details/79924014
- centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课
centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节 ...
- 在centos 6.9安装wordpress,浏览器不能访问问题
在centos 6.9安装wordpress浏览器访问先出现403错误,然后提示access denied nginx错误打印FastCGI sent in stderr: "Unable ...
随机推荐
- JVM ——知识总结(面试)
1)JAVA语言是一种强语言 2)JAVA不允许使用指针访问内存,不允许使用指针数组访问内存 3)有自动收集垃圾的作用 4)方法调用时,会创建栈帧在栈中,调用完是程序自动出栈释放,而不是gc释放 5) ...
- 正则表达式中pw、IDCard和EM匹配
1密码强度正则 //密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符 var pPattern = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])( ...
- CSS清除浮动的方法及优缺点
浮动是CSS布局里面用的比较多的属性.浮动的框向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止. 因为浮动会使当前元素产生向上浮的效果,所以浮动的元素会脱离正常的文档流,它包围的内容在 ...
- JS之event flow
DOM事件流 1.定义: DOM(文档对象模型)结构是一个树型结构,当一个HTML元素产生一个事件时,该事件会在元素节点与根结点之间的路径传播,路径所经过的结点都会收到该事件,这个传播过程可称为DOM ...
- 用mybatis中的insert方法插入数据,返回值为1,但数据库却没有数据
刚才在写东西的时候,用mybatis中的 <insert id="add" parameterType="cn.entity.Computer"> ...
- [Tensorflow实战Google深度学习框架]笔记4
本系列为Tensorflow实战Google深度学习框架知识笔记,仅为博主看书过程中觉得较为重要的知识点,简单摘要下来,内容较为零散,请见谅. 2017-11-06 [第五章] MNIST数字识别问题 ...
- Android开发 ---实现ListView的A-Z字母排序和过滤搜索功能
效果图: 1.activity.xml 描述: 线性布局中一个层叠布局 <?xml version="1.0" encoding="utf-8"?> ...
- vue初体验-ES6 基础知识补充 let 和const
本人水平有限,如内容有误,欢迎指正,谢谢. let : 主要特点: 1.作用域只局限于当前代码块.2.使用let 声明的变量作用域不会被提升.3.在相同的作用域下不能声明相同的变量.4.for循环体 ...
- go 语言如何跨平台编译
以evio源码的分析来说明: 我们看到在有些文件的头部有这样一个标识:文件链接:https://github.com/tidwall/evio/blob/master/evio_unix.go // ...
- tcl脚本直接执行脚本中中文识别不了的处理
上一篇说tcl中文乱码是因为我写了个bat调用该脚本,但是脚本中的中文路径是乱码.今天刚好有时间进行解决下: 首先看看调用代码 "./bin/base-tcl8.6-thread-win32 ...