今天想用wordpress搭个博客,我的服务器是腾讯云的,然后腾讯云里有官方文档搭建的,但它是用centos为例,

搞得我的ubuntu跟着它走了些歪路,然后结合网上其它资料,终于一点一点的解决了。

声明 :参考这篇博文的尽量跟我的环境一样,因为如果不一样的话,那些配置文件的位置可能不同,这样就不方便了。

我把遇到的问题都一个个记下来,真的遇到太多坑了。

说明 :关于服务器方面,我就不详细说了,买服务器,买域名这些网上一堆,在这里就不花篇幅讲了。

   参考这篇博文的人需要有点linux基础,不适合小白。或者说,我是为了记录遇到的问题才决定写这篇博文的。

一、创建并运行云服务器

这里就不说了,买就完事了。

二、搭建 LNMP 环境

2.1 安装mysql( 教程

先安装上,后面会用到。

2.2 安装nginx

sudo apt-get update

sudo apt-get install nginx	

然后就访问 http://你的服务器域名或ip地址

出现下图代表安装成功

如果没有成功,出现以下错误。

说什么  /etc/nginx/nginx.conf 找不到的,应该是环境乱了,我们需要重新安装nginx。

可以执行以下代码

# nginx是依赖nginx-core的,nginx-core又是依赖nginx-common的
# 所以全都卸载光光,重点是要加上 --purge 这个参数代表 连同删除配置文件
sudo apt-get --purge remove nginx-common
sudo apt-get --purge remove nginx*
# 清除依赖包
sudo apt-get autoremove
# 重新安装
sudo apt install nginx

相信不出意外的话此时安装的nginx是成功的了

2.3 安装php7.0

apt-get -y install php7.-fpm php-mysql	

PHP fix_pathinfo 潜在安全漏洞修复,在/etc/php/7.0/fpm/php.ini中找到

;cgi.fix_pathinfo=

把1改成0

cgi.fix_pathinfo=

重启

systemctl restart php7.-fpm	

2.4 配置mysql

其实也不算配置,就是要建一个数据库,因为后面的wordpress要用到,我在这里就顺着顺序写了,不用

等到后面

2.4.1登录 MySQL 服务器

使用 root 用户登录到 MySQL 服务器。

mysql -uroot -p	

2.4.2 为 WordPress 创建数据库并设置用户名和密码(本教程设置如下,您可自行定义)。

为 WordPress 创建 MySQL 数据库 “wordpress”。

CREATE DATABASE wordpress;

为已创建好的 MySQL 数据库创建一个新用户 “user@localhost”。

CREATE USER user@localhost;	

并为此用户设置密码“wordpresspassword”。

SET PASSWORD FOR user@localhost=PASSWORD("wordpresspassword");	

2.4.3 为创建的用户开通数据库 “wordpress” 的完全访问权限。

GRANT ALL PRIVILEGES ON wordpress.* TO user@localhost IDENTIFIED BY'wordpresspassword';	

2.4.4 使用以下命令使所有配置生效。

FLUSH PRIVILEGES;	

2.4.5 配置完成,退出 MySQL。

exit;	

2.5 配置nginx

打开一个默认文件,将里面内容清空,换上下文。

sudo vim /etc/nginx/sites-available/default	

所要替换的内容:

server {
listen ;
root /usr/share/nginx/html;
server_name localhost; #charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main; location / { index index.php index.html index.htm; } #error_page /.html; #redirect server error pages to the static page /50x.html
#
error_page /50x.html;
location = /50x.html { root /usr/share/nginx/html; } #pass the PHP scripts to FastCGI server listening on 127.0.0.1:
#
location ~ .php$ { fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params; } }

2.6 配置php7.0

2.6.1 配置 PHP Session 的存储路径。

sudo vim /etc/php/7.0/fpm/php.ini	

然后搜索到session.save_path

/session.save_path	

将其值改成下图所示,不过也得先确定哪个sessions的文件夹对不对

2.6.2 监听9000端口(大坑!)

我就是被这个问题坑死的。。。

编辑文件:

sudo vim /etc/php/7.0/fpm/pool.d/www.conf	

然后搜索到listen = /run/php/php7.0-fpm.sock

/listen = /run/php/php7.-fpm.sock	

然后将其值改成9000

listen = 	

第一个是原来的,我注释掉了。

2.7 环境测试

2.7.1 在/usr/share/nginx/html目录下创建文件index.php

sudo vim /usr/share/nginx/html/index.php	

里面内容为

<?php
echo "<title>Test Page</title>";
echo "Hello World!";
?>

2.7.2 输入测试地址

http://云服务器实例的公网 IP/index.php

测试结果:

至此LNMP环境搭建成功~

三、安装和配置 WordPress

3.1 下载wordpress

3.1.1 先删除网站根目录下的文件

rm /usr/share/nginx/html/*

3.1.2 依次下载 WordPress 并解压到当前目录

wget https://cn.wordpress.org/wordpress-4.7.4-zh_CN.tar.gz
tar zxvf wordpress- 4.7.-zh_CN.tar.gz

3.2 配置数据库信息

wordpress需要跟数据库一起用,所以需要把数据库信息配置到wordpress中,

wordpress的 安装文件夹包含名为 wp-config-sample.php 的示例配置文件。

3.2.1 创建新配置文件

wp-config-sample.php 文件复制到名为 wp-config.php 的文件,

使用以下命令创建新的配置文件,并将原先的示例配置文件保留作为备份。

cd wordpress/
cp wp-config-sample.php wp-config.php

3.2.2 打开并编辑新创建的配置文件

vim wp-config.php	

然后把相应信息填进去,最后一个DB_HOST一般是localhost,不用改。


// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress'); /** MySQL database username */
define('DB_USER', 'user'); /** MySQL database password */
define('DB_PASSWORD', 'wordpresspassword'); /** MySQL hostname */
define('DB_HOST', 'localhost');

3.3 安装wordpress

3.3.1 复制文件到nginx文档根目录

就是wordpress/下的文件

mv * /usr/share/nginx/html/	

3.3.2 开始著名的5分钟安装

输入访问地址:http://你的服务器域名或ip地址/wp-admin/install.php

出现下图

然后填入相关信息完成安装。

然后后面的博客就随便你们的喜好去修改了。

参考链接:

https://cloud.tencent.com/document/product/213/8044

https://www.jianshu.com/p/79942f37b2dc

https://segmentfault.com/a/1190000010877532

Ubuntu 16.04.1 LTS配置LNMP使用wordpress搭建博客的更多相关文章

  1. Ubuntu 16.04.2 LTS 安装 jdk1.6 和 tomcat6 (一)

    java和tomcat环境配置已经有很多教程和文章,最近项目需要配置Ubuntu 16.04.2下的古老的java6和tomcat 6,遇到小坑,特记录和分享. 网上的教程不是太新,就是太老,还有一些 ...

  2. Ubuntu 16.04.3 LTS u盘-安裝教程(填坑)

    Ubuntu 16.04.3 LTS 下载地址: https://www.ubuntu.com/download/desktop 下载u盘后文件为iso,可以选择UltraISO制作U盘启动,也可以直 ...

  3. Alienware-15-R3 装Ubuntu 16.04.3 LTS

    前言:Alienware-15-R3默认安装的系统是win10.现在卸载win0,装Ubuntu 16.04.3 LTS. 一.下载Ubuntu 16.04.3 LTS镜像文件,下载地址:https: ...

  4. 如何在Ubuntu 16.04上安装配置Redis

    如何在Ubuntu 16.04上安装配置Redis Redis是一个内存中的键值存储,以其灵活性,性能和广泛的语言支持而闻名.在本指南中,我们将演示如何在Ubuntu 16.04服务器上安装和配置Re ...

  5. Ubuntu 16.04.4 LTS环境中php7.0使用mysqli失败,数据库无法访问

    环境: Ubuntu 16.04.4 LTS php7.0 输入命令php -m,显示如下,发现没有mysqli模块 输入命令sudo apt install php-mysql,安装mysql模块, ...

  6. Ubuntu 16.04.4 LTS设置root用户登陆图形界面

    普通用户登陆真是太憋屈,这也不能那也不能,root用户登录就可以肆无忌惮了 本方法采用nano编辑器,ubantu版本Ubuntu 16.04.4 LTS,其他版本应该也一样,下面进入正题 1.终端登 ...

  7. Ubuntu 14.04.3 LTS 配置 DNS Server

    我们目的是用一台局域网机器完成 192.168.1.113 <-->cloudshield.com的解析,指定A记录和CNAME; 0.关于Ubuntu 14.04.2 LTS 下载.安装 ...

  8. Ubuntu 16.04 samba相关配置

    samba是 SMB/CIFS网络协议的重新实现,它作为NFS的补充使得在Linux和Windows系统之间进行文件共享.打印更容易实现. 相关介绍: SAMBA套件: (1)samba:这个套件主要 ...

  9. Ubuntu 16.04 服务器上配置使用 Docker

    Docker基础概念 在使用Docker之前,我们先了解下几个Docker的核心概念 Docker Daemon Docker引擎,就是运行在后台的一个守护进程,在我们启动它之后,我们就可以通过Doc ...

随机推荐

  1. Alpha阶段Scrum Meeting合集(江山代有才人秃队)

    Day URL 第一天 第1篇Scrum冲刺博客 第二天 第2篇Scrum冲刺博客 第三天 第3篇Scrum冲刺博客 第四天 第4篇Scrum冲刺博客 第五天 第5篇Scrum冲刺博客 第六天 第6篇 ...

  2. 关于web资金系统提现安全保护,防止极快的重复并发请求导致重复提现的解决思路

    关于WEB金融系统中的提现安全问题很多人没有深入思想,导致有漏洞,常常会遇到有些人遇到被攻击到导资金损失的麻烦,     其实要彻底解决重复并发请求 导致重复提现问题,是需要花点心思的,并没有看起来的 ...

  3. Django模板语言相关内容

    Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 在Django的模板语言中按此语法使用:{{ 变量名 ...

  4. CYQ.Data 支持 PostgreSQL 数据库

    前言: 很久之前,就有同学问我CYQ.Data能不能支持下PostgreSQL,之后小做了下调查,发现这个数据库用的人少,加上各种因素,就一直没动手. 前两天,不小心看了一下Github上的消息: 看 ...

  5. mapbox.gl源码解析——基本架构与数据渲染流程

    加载地图 Mapbox GL JS是一个JavaScript库,使用WebGL渲染交互式矢量瓦片地图和栅格瓦片地图.WebGL渲染意味着高性能,MapboxGL能够渲染大量的地图要素,拥有流畅的交互以 ...

  6. Quartz简单实现定时任务管理(SSM+Quartz)

    首先你得有一个用Maven搭好的SSM框架,数据库用的Mysql,这里只有关于Quartz的部分.其实有大神总结的很好了,但做完后总有些地方不一样,所以写这篇作为笔记.这里先把大神的写的分享给大家:h ...

  7. scrapy爬虫 快速入门

    Scrapy 1. 简介 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中.其最初是为了页面抓取 (更确切来说, 网络 ...

  8. java jdk动态代理模式举例浅析

    代理模式概述 代理模式是为了提供额外或不同的操作,而插入的用来替代”实际”对象的对象,这些操作涉及到与”实际”对象的通信,因此代理通常充当中间人角色. java中常用的动态代理模式为jdk动态代理和c ...

  9. 从壹开始前后端分离 [ vue + .netcore 补充教程 ] 二七║ Nuxt 基础:框架初探

    缘起 哈喽大家好,又是周四了,俗话说周四来了,周末还远么哈哈,老张我也想下周请假,来个16天的大长假哟,不知道大家是怎么请假的,近来发现文章下边已经没有人评论了,赶脚比较凄凉了,大家看到的麻烦点个赞呀 ...

  10. 【Linux基础】常用Linux命令: cd, cp, ls, mkdir, mv, rm, su, uname

    常用Linux命令:cd, cp, ls, mkdir, mv, rm, su, uname cd命令:切换当前工作目录至 dirName(目录参数) 其中 dirName 可为绝对路径或相对路径.若 ...