Ubuntu 18 手动部署LNMP环境并安装Wordpress

PS:就TMD想吐槽一下,csdn和简书的教程,真的是太“好”了。

一、配置虚拟机环境

此处略过,很简单。
但是,请一定要更新源。如下;

1
sudo apt update

二、安装Vim,PHP,MySQL/MariaDB,NGINX

(一)安装vim

打开终端后

1
sudo apt install vim

(二)安装PHP及其支持环境

1.首先我们安装与PHP的支持环境相关的拓展。

1
2
sudo apt update
sudo apt install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip

注:每个WordPress插件都有自己的一套要求。有些可能需要安装额外的PHP包。查看您的插件文档,以发现它的PHP需求。如果它们可用,则可以将它们安装在apt如上文所示。

2.安装完扩展后,重新启动PHP-FPM进程,以便正在运行的PHP处理器能够利用新安装的特性:

1
sudo systemctl restart php7.2-fpm

(三)安装配置NGINX

1.安装NGINX

1
sudo apt install nginx

2.配置NGINX

总注:你如果使用/etc/nginx/sites-available/default的默认配置(与/var/www/html作为你的网页根目录)。那么这台服务器上只能托管一个网站。如果想托管更多的网站,最好将必要的配置分成逻辑块,每个站点一个文件。

再注,以下命令你可能会用得上(顾名思义)

1
2
3
sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

首先,编辑nginx的配置文件

1
2
3
sudo nano /etc/nginx/sites-available/wordpress
或者
sudo vim /etc/nginx/sites-available/wordpress

使用vim/nano对应的命令,将以下代码粘贴到该文件,保存退出。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
server {
listen 80;
listen [::]:80;
root /var/www/html/wordpress;
index index.php index.html index.htm;
server_name 127.0.0.1;

client_max_body_size 100M;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

接下来,把配置文件进行软连接:

1
sudo ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/

现在,我们可以通过键入以下命令来检查配置中的语法错误:

1
sudo nginx -t

如果没有报告错误,请键入以下命令重新加载Nginx:

1
sudo systemctl reload nginx

(四)安装配置数据库

注:此处我使用Mariadb数据库,MySQL类似。

再注:这些命令你可能用得上(顾名思义)。

1
2
3
sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

1.安装MariaDB

1
sudo apt install mariadb-server mariadb-client

安装完成。

2.配置数据库
首先,登录MySQL根(管理)帐户。如果MySQL被配置为使用auth_socket身份验证插件(默认),就这样登录:

1
sudo mysql

如果上面的命令不行,则这样(优先使用):

1
mysql -u root -p

然后,会有这样的提示(括号类的内容就是你的操作):

Enter current password for root (enter for none): (你直接回车)
Set root password? [Y/n]:(输入) Y
New password: (设置你的root密码)
Re-enter new password: (再输入一次)
Remove anonymous users? [Y/n]: (输入)Y
Disallow root login remotely? [Y/n]: (输入)Y
Remove test database and access to it? [Y/n]: (输入) Y
Reload privilege tables now? [Y/n]: (输入) Y

然后,就进入了管理页。
现在,我们新建一个数据库(下面的所有命令都应该在mysql里面,你只能在mysql>这个东西后面输入下面的命令

1
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

注:上面的wordpress即为数据库名称,注意,你可以修改成任意你想修改的内容,但是在下面的操作中,也要跟着修改哦!

接下来,创建一个单独的MySQL用户帐户

1
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'password';

注:wordpress是数据库,wordpressuser是用户名,password是密码。你可以修改,但要记住哦!

现在您有了一个数据库和用户帐户,每个帐户都是专门为WordPress制作的。我们需要刷新特权,以便MySQL的当前实例知道我们最近所做的更改:

1
FLUSH PRIVILEGES;

键入以下命令退出MySQL:

1
EXIT;

MySQL会话将退出,返回到常规的Linuxshell。

三、下载、安装、配置wordpress

(1)下载安装

依次执行下面的命令。

1
2
3
4
5
6
cd /tmp (定位到tmp文件夹)
sudo wget https://wordpress.org/latest.tar.gz(下载wp压缩包)
tar -xzvf latest.tar.gz(解压缩)
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php(备份配置文件)
sudo cp -a /tmp/wordpress/. /var/www/wordpress(将解压的文件夹递归复制到网站根目录)
sudo chown -R www-data:www-data /var/www/wordpress(赋读写权)

(2)配置wordpress

依次执行下面的命令。

1
sudo nano /var/www/wordpress/wp-config.php

define(‘DB_NAME’, ‘wordpress’);数据库名称
/** MySQL database username /
define(‘DB_USER’, ‘wordpressuser’);用户名
/ *
MySQL database password */
define(‘DB_PASSWORD’, ‘password’);密码
. . .
define(‘FS_METHOD’, ‘direct’);

保存退出!

总结

至此,配置就已经完成了。可以去浏览器网址栏输入127.0.0.1或者localhost,进行安装了。
文章写了一个小时,但是还是有些不足之处,请结合参考下面的文章。
文章一
文章二