Ubuntu 16.04.1 LTS配置LNMP使用wordpress搭建博客
今天想用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
- 一、创建并运行云服务器
- 二、搭建 LNMP 环境
- 2.1 安装mysql(教程)
- 2.2 安装nginx
- 2.3 安装php7.0
- 2.4 配置mysql
- 2.4.1登录 MySQL 服务器
- 2.4.2创建数据库和用户
- 2.4.3开通访问权限
- 2.4.4配置生效
- 2.4.5退出MySQL
- 2.5 配置nginx
- 2.6 配置php7.0
- 2.6.1配置 PHP Session
- 2.6.2监听9000端口
- 2.7 环境测试
- 2.7.1创建index.php
- 2.7.2输入测试地址
- 三、安装和配置 WordPress
- 3.1 下载wordpress
- 3.1.1删除文件
- 3.1.2下载并解压
- 3.2 配置数据库信息
- 3.2.1创建新配置文件
- 3.2.2编辑配置文件
- 3.3 安装wordpress
- 3.3.1复制文件到nginx
- 3.3.2著名的5分钟安装
Ubuntu 16.04.1 LTS配置LNMP使用wordpress搭建博客的更多相关文章
- Ubuntu 16.04.2 LTS 安装 jdk1.6 和 tomcat6 (一)
java和tomcat环境配置已经有很多教程和文章,最近项目需要配置Ubuntu 16.04.2下的古老的java6和tomcat 6,遇到小坑,特记录和分享. 网上的教程不是太新,就是太老,还有一些 ...
- Ubuntu 16.04.3 LTS u盘-安裝教程(填坑)
Ubuntu 16.04.3 LTS 下载地址: https://www.ubuntu.com/download/desktop 下载u盘后文件为iso,可以选择UltraISO制作U盘启动,也可以直 ...
- Alienware-15-R3 装Ubuntu 16.04.3 LTS
前言:Alienware-15-R3默认安装的系统是win10.现在卸载win0,装Ubuntu 16.04.3 LTS. 一.下载Ubuntu 16.04.3 LTS镜像文件,下载地址:https: ...
- 如何在Ubuntu 16.04上安装配置Redis
如何在Ubuntu 16.04上安装配置Redis Redis是一个内存中的键值存储,以其灵活性,性能和广泛的语言支持而闻名.在本指南中,我们将演示如何在Ubuntu 16.04服务器上安装和配置Re ...
- Ubuntu 16.04.4 LTS环境中php7.0使用mysqli失败,数据库无法访问
环境: Ubuntu 16.04.4 LTS php7.0 输入命令php -m,显示如下,发现没有mysqli模块 输入命令sudo apt install php-mysql,安装mysql模块, ...
- Ubuntu 16.04.4 LTS设置root用户登陆图形界面
普通用户登陆真是太憋屈,这也不能那也不能,root用户登录就可以肆无忌惮了 本方法采用nano编辑器,ubantu版本Ubuntu 16.04.4 LTS,其他版本应该也一样,下面进入正题 1.终端登 ...
- Ubuntu 14.04.3 LTS 配置 DNS Server
我们目的是用一台局域网机器完成 192.168.1.113 <-->cloudshield.com的解析,指定A记录和CNAME; 0.关于Ubuntu 14.04.2 LTS 下载.安装 ...
- Ubuntu 16.04 samba相关配置
samba是 SMB/CIFS网络协议的重新实现,它作为NFS的补充使得在Linux和Windows系统之间进行文件共享.打印更容易实现. 相关介绍: SAMBA套件: (1)samba:这个套件主要 ...
- Ubuntu 16.04 服务器上配置使用 Docker
Docker基础概念 在使用Docker之前,我们先了解下几个Docker的核心概念 Docker Daemon Docker引擎,就是运行在后台的一个守护进程,在我们启动它之后,我们就可以通过Doc ...
随机推荐
- C语言中#undef作用
#undef 作用:取消定义的宏 指令格式:#undef 标识符 1 #include <stdio.h> 2 3 #define MAX 5 4 5 int main() { 6 pri ...
- emacs 高亮
用途:让某个单词高亮显示 1,安装 m-x 回车,输入list-packages 在列表中找到highlight-symbol后,鼠标点击它,再点击安装 2,在.emacs中配置 ;;高亮 (requ ...
- Daily Life 01
2019-03-03 我不擅于用文字记录自己的生活,因为很长时间一个人习惯了随意简单的生活,觉得很多事留给回忆就好,另一方面文笔不好,怕自己流出的文字不有趣,过于流水.有看过一些身边人写的随记,都有写 ...
- June 29th. 2018, Week 26th. Friday
Real love is always worth waiting for. 真爱永远值得等待. From Westworld. Real love is rare, but it does exis ...
- jquery ajax跨域请求后台的简单例子
一.简介AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新. ajax() 方法通过 HTTP 请求加载远程数据. 该方法是 jQuery 底层 AJAX 实现.简 ...
- 自学python的日记分享
2019.4.22登记 课堂笔记 2019.4.8 在windows环境下,用python写出第一个程序“hello world” print("Hello World!!!") ...
- Linux下查看文件内容的命令和工具
1.catcat命令主要用来查看文件内容,创建文件,合并文件,追加文件等. 1.1.查看文件 格式:cat 文件名称 说明:这条命令会把文件内容全部输出到显示屏上. cat -n 文件名称:查看文件内 ...
- javascript对象和数组之 深拷贝和浅拷贝
管是在面试中还是我们的项目中经常会用到数组或者对象的深拷贝,下面我就自己总结的分享给大家. 首先要知道什么是深拷贝?什么是浅拷贝? 深拷贝:源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外 ...
- pycharm远程同步服务器代码,并设置权限
Pycharm开发工具链接至上面创建的虚拟环境链接 权限问题:此时上传还可能遇到权限问题,即使用的用户名没有权限在给定的目录下写入和修改文件. ubuntu权限管理:移动到指定目标上传文件夹的父文件夹 ...
- 在Linux(Centos7)上使用Docker运行.NetCore
在上一篇中我们写了如何在windows中使用docker运行.netcore,既然我们了解了windows下的运行发布,我们也可以试试linux下使用docker运行.netcore项目,那么今天我们 ...