今天想用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. golang 变量定义

    package main import "fmt" var luckyNum = 6 var luckyStr = "love" //myNum := 6 // ...

  2. ASP.NET Core 快速入门(环境篇)

    [申明]:本人.NET Core小白.Linux小白.MySql小白.nginx小白.而今天要说是让你精通Linux ... 的开机与关机.nginx安装与部署.Core的Hello World .. ...

  3. 再谈AbstractQueuedSynchronizer3:基于AbstractQueuedSynchronizer的并发类实现

    公平模式ReentrantLock实现原理 前面的文章研究了AbstractQueuedSynchronizer的独占锁和共享锁,有了前两篇文章的基础,就可以乘胜追击,看一下基于AbstractQue ...

  4. Java内存模型一个经典例子-指令重排序与CPU指令多发射导致执行结果异常

    先上代码: import java.util.concurrent.BrokenBarrierException; import java.util.concurrent.CyclicBarrier; ...

  5. [Inside HotSpot] Java的方法调用

    1. 方法调用模块入口 Java所有的方法调用都会经过JavaCalls模块.该模块又细分为call_virtual调用虚函数,call_static调用静态函数等.虚函数调用会根据对象类型进行方法决 ...

  6. volatile关键字的特性及证明

    volatile是java虚拟机提供的轻量级的同步机制 JMM(Java内存模型)是围绕着并发编程中原子性.可见性.有序性这三个特征来建立的 原子性:一个操作或多个操作要么全部执行完成且执行过程不被中 ...

  7. Kubernetes 笔记 10 Job 机器人加工厂

    本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Hi,大家好, ...

  8. 从壹开始前后端分离 [ Vue2.0+.NET Core2.1] 二十四║ Vuex + JWT 实现授权验证登录

    壹周回顾 哈喽,又是元气满满的一个周一,又与大家见面了,周末就是团圆节了,正好咱们的前后端也要团圆了,为什么这么说呢,因为以后的开发可能就需要前后端一起了,两边也终于会师了,还有几天Vue系列就基本告 ...

  9. 使用JDBC连接操作数据库

    JDBC简介 Java数据库连接(Java Database Connectivity,JDBC),是一种用于执行SQL语句的Java API,它由一组用Java编程语言编写的类和接口组成. JDBC ...

  10. Spring Boot 2.x 系列教程:WebFlux REST API 全局异常处理 Error Handling

    摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 本文内容 为什么要全局异常处理? WebFlux REST 全 ...