本教程介绍如何在centos7 系统下基于Nginx部署搭建WordPress。包括下载WordPress,创建WordPress操作的MySQL数据库和用户,配置WordPress,在Nginx中配置WordPress以及安装WordPress。

下载WordPress

直接通过wget命令去它官网下载最新的版本:

wget http://wordpress.org/latest.tar.gz

解压:

tar -xzvf latest.tar.gz

创建WordPress操作的数据库和用户

yum 安装mysql 5.6 请参考 https://www.cnblogs.com/weifeng1463/p/7992796.html

yum 安装 nginx  请参考 https://www.cnblogs.com/weifeng1463/p/9187308.html

yum 安装 php7.1   请参考  https://www.cnblogs.com/nulige/p/9382064.html

创建MySQL时设置的root密码登录MySQL:

mysql -u root -p

创建数据库:

CREATE DATABASE wordpress;

创建用户:

CREATE USER wordpress@localhost;

设置密码:

SET PASSWORD FOR wordpress@localhost=PASSWORD("your password");

配置权限:

GRANT ALL PRIVILEGES ON wordpress.* TO wordpress@localhost IDENTIFIED BY 'your password';

刷新权限配置:

FLUSH PRIVILEGES;

退出MySQL:

QUIT;

配置WordPress

重命名示例文件wp-config(此处的路径/root/wordpress对应你自己的存放路径):

mv /root/wordpress/wp-config-sample.php /root/wordpress/wp-config.php

修改配置文件内容:

vi /root/wordpress/wp-config.php

修改的内容包括DB_NAME,DB_USER,DB_PASSWORD以及下面的唯一key,其中前三个是在第二步自己设置的内容,唯一key可以直接去它提供的网站上拷贝,修改后的文件如下所示:

配置Nginx

nginx 的配置文件如下:

 cat /etc/nginx/nginx.conf
user nobody;
worker_processes auto; error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid; events { use epoll;
worker_connections 65535;
} http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 3526;
server_names_hash_max_size 4096;
log_format main '"$remote_addr" - "$remote_user" "[$time_local]" "$request" "$request_body" "$status"'
'"$body_bytes_sent" "$http_referer" "$http_user_agent" "$http_x_forwarded_for"'
'"$upstream_addr" "$upstream_response_time" "$upstream_status" "$request_time"'; underscores_in_headers on; #下划线header允许代理
sendfile on;
tcp_nopush on;
keepalive_timeout 30;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
connection_pool_size 256;
client_header_buffer_size 32k;
large_client_header_buffers 4 256k;
request_pool_size 4k;
output_buffers 4 32k;
postpone_output 1460;
client_max_body_size 100m;
client_body_buffer_size 256k;
client_body_temp_path /etc/nginx/client_body_temp;
proxy_temp_path /etc/nginx/proxy_temp;
fastcgi_temp_path /etc/nginx/fastcgi_temp;
fastcgi_intercept_errors on;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_comp_level 5;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css text/htm application/xml text/javascript application/javascript;
gzip_vary on;
access_log /var/log/nginx/access.log main;
include /etc/nginx/conf.d/*.conf;
}

  

 cat /etc/nginx/conf.d/allplus.conf
server {
listen 80;
server_name 47.90.****.31;
index index.html index.htm index.php;
root /data/www; location ~ \.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;
} }

  

Nginx的root路径是/data/www/,所以讲wordpress里面的内容拷贝到此路径下:

cp -r /root/wordpress/* /data/www/

修改权限(可以设置网址目录文件777 , 允许所有用户可操作, 防止遇到权限问题):

chown -R 777 /data/www/

重启Nginx:

/etc/init.d/nginx restart

安装WordPress

全部搞定后,访问你的ip或者是域名应该就是这样子的了:

选择语言->设置标题与管理员用户名与密码以及电子邮件->安装WordPress

安装完后,访问你的IP或者域名,一个初始的博客就搭建好了~:

访问http://your_ip/wp-login.php,输入刚才设置的账户和密码,进入博客管理界面,在这里可以写文章,改主题,应用插件等等,改完再访问你的博客主页就会看到更新~:

上传主体theme时遇到的问题:

问题描述

WordPress 上传题压缩包时出现这个问题

The link you followed has expired.

原因
服务器的上传限制(默认限制为20M)。

解决方法
修改 php.ini 文件中:

vim /etc/php.ini

修改如下三项(将值根据实际情况调大):

upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300

重启php-fpm ,nginx服务

systemctl restart nginx

systemctl restart php-fpm

2.  上传主体需要ftp的问题

使用SFTP连接到服务器,进入wp-content目录,新建tmp文件夹,设置文件夹的权限为777。返回网站根目录,编辑wp-config.php

添加下列代码(注意中英文符号)

define('WP_TEMP_DIR',ABSPATH.'wp-content/tmp');
define("FS_METHOD","direct");
define("FS_CHMOD_DIR",0777);
define("FS_CHMOD_FILE",0777);

注意:要在定义ABSPATH的后面添加

最后的代码应该是

/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', dirname( __FILE__ ) . '/' );
} define('WP_TEMP_DIR',ABSPATH.'wp-content/tmp');
define("FS_METHOD","direct");
define("FS_CHMOD_DIR",0777);
define("FS_CHMOD_FILE",0777);

  

保存后设置wp-content目录中的plugins和themes文件夹权限为777,此时插件和主题已经可以直接更新了。注意操作顺序,先建立tmp,后设置权限为777,再修改wp-config.php配置文件

LNMP环境下搭建wordpress的更多相关文章

  1. LNMP环境下搭建SVN服务

    最近自己买了个服务器,试着在上面搭建了LNMP环境,因为以前在本地用MAMP Pro搭建过LAMP环境,所以基本上还算是轻车熟路,第一次搭建LNMP,使用的是一键安装,过程是顺利的,后来在使用过程中遇 ...

  2. linux搭建的LNMP环境下的mysql授权远程连接

    用phpstudy搭建的lnmp环境下mysql授权远程连接 简单高效 这是因为mysql 里的优先级不是所有人(提前检查防火墙是关闭状态)1.使用phpstudy安装的mysql没有放置到可以直接调 ...

  3. 【经验之谈】Windows环境下配置WordPress

    前言 wordpress全球著名的开放博客平台,拥有成千上万个各式插件和不计其数的主题模板样式,使用php和mysql搭建,下面说下载windows环境下配置wordpress,经验之谈. 安装 关于 ...

  4. 记一次lnmp环境下无法执行php文件

    lnmp环境搭建好后却无法正常执行php文件,坑爹啊!~ [错误状况] 页面直接打印出php代码内容: php文件无法执行?: 查看nginx配置文件: server { listen 80; ser ...

  5. Linux:LNMP环境的搭建

    LNMP环境的搭建 安装DNS服务器 安装DNS服务 yum install bind -y DNS的配置 创建正向解析 以创建一个名为"lsy.com"的正向查找区域为例: 第一 ...

  6. lnmp环境快速搭建及原理解析

    刚开始学习php的时候是在wamp环境下开发的,后来才接触到 lnmp 环境当时安装lnmp是按照一大长篇文档一步步的编译安装,当时是真不知道是在做什么啊!脑袋一片空白~~,只知道按照那么长的一篇文档 ...

  7. ubuntu 14.04LTS 环境下搭建tftp服务器

    花费我一整天的时间在 ubuntu 14.04LTS 环境下搭建tftp服务器,网上好多资料参差不齐,简单来说,TFTP(Trivial File Transfer Protocol),是一个基于UD ...

  8. Linux 14.04lts 环境下搭建交叉编译环境arm-linux-gcc-4.5.1

    交叉编译工具链是为了编译.链接.处理和调试跨平台体系结构的程序代码,在该环境下编译出嵌入式Linux系统所需要的操作系统.应用程序等,然后再上传到目标板上. 首 先要明确gcc 和arm-linux- ...

  9. 非域环境下搭建自动故障转移镜像无法将 ALTER DATABASE 命令发送到远程服务器实例的解决办法

    非域环境下搭建自动故障转移镜像无法将 ALTER DATABASE 命令发送到远程服务器实例的解决办法 环境:非域环境 因为是自动故障转移,需要加入见证,事务安全模式是,强安全FULL模式 做到最后一 ...

随机推荐

  1. 虚拟主机、VPS以及云主机的区别和对比

    对于很多需要建网站的朋友来说,虚拟主机是必须要了解的基础知识.虚拟主机相对于VPS与云主机来说出现的较早,也是被大多数站长所了解的主机.很多人容易将这三者混淆,弄不清楚三者的联系与区别.那么虚拟主机. ...

  2. https和http有什么区别

    在URL前加https://前缀表明是用SSL加密的. 你的电脑与服务器之间收发的信息传输将更加安全. Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定. http和h ...

  3. Asp.net mvc 中的路由

    在 Asp.net mvc 中,来自客户端的请求总是针对某个 Controller 中的 Action 方法,因此,必须采用某种机制从请求的 URl 中解析出对应的 Controller 和 Acti ...

  4. P2P视频模块

    P2P视频模块数据手册 公  司 : 深圳市万秀电子有限公司 网  站 : http://www.wanxiucx.com 总  机 : 0755-23215689 联系人: 张先生 手  机 : 1 ...

  5. J.U.C JMM. pipeline.指令重排序,happen-before(续)

    前面已经介绍硬件平台Cache Coherence问题和解决办法,下面来看看Java虚拟机平台的相关知识.硬件平台处理器,高速缓存,主存之间的交互关系如下: Java内存模型(JMM)         ...

  6. git 简单入门

    首先了解一下git的是什么: [百度百科解释]Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理.[2]  Git 是 Linus Torvalds 为了帮助管理 ...

  7. js双向绑定和地址传递带来的痛苦解决方案之对象拷贝

    function cloneObj(obj) { var newObj = {}; if (obj instanceof Array) { newObj = []; } for (var key in ...

  8. android 软键盘的使用

    AndroidManifest.xml文件中界面对应的<activity>里加入android:windowSoftInputMode="adjustPan"   键盘 ...

  9. NodeJs实现他人项目实例

    1.简单实例,参考 https://github.com/alsotang/node-lessons/tree/master/lesson2 2.express一个新项目 ,但出现警告 发现少了nod ...

  10. Elasticsearch 全教程--入门

    1.1 初识 Elasticsearch 是一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎,可以说 Lucene 是当今最先进,最高效的全功能开源搜索引擎框架. 但是 L ...