使用Nginx、MariaDB和PHP7在Ubuntu16.04上安装Drupal 8

  • 技术文档
  • 2022.03.24
  • 浏览:74

如果你想知道如何在带有Nginx、MariaDB和PHP7的Ubuntu16.04 LTS上安装Drupal 8,你来对地方了。

WordPress是世界上最受欢迎的内容管理系统(CMS),由于其易用性和数千个插件和主题,受到世界各地数百万博主和网站管理员的喜爱。然而,对于拥有比普通熊更好的网络技能的高级用户来说,它也很笨重和缓慢。

Drupal是城里的另一种游戏。Drupal比WordPress更快、更安全、对搜索引擎优化更友好。如果你厌倦了WordPress,并且不介意Drupal可用的主题和模块(又名插件)数量太少,那么试试Drupal吧。

因此,在本教程中,我将向您展示如何在Ubuntu16.04 LTS Xenial Xerus上安装Drupal 8,以及Nginx、MariaDB和PHP7。我假设您已经在Ubuntu 16.04上设置了一个LEMP堆栈。如果不是这样,请点击下面的链接查看我的简易指南。Drupal也适用于LAMP,但这里我将向您展示如何使用LEMP设置它。

在Ubuntu 16.04 LTS上安装Nginx、MariaDB和PHP7(LEMP堆栈)

完成后,回到这里继续阅读。

在Ubuntu 16.04上安装Drupal 8

首先,使用以下命令将所有系统软件升级到软件存储库中可用的最新版本:

sudo apt update && sudo apt upgrade

接下来,将Drupal从官网下载到Ubuntu 16.04服务器。您可以使用wget来实现这一点。最新的稳定版本是Drupal 8.1.3,于2016年6月15日发布。

wget https://ftp.drupal.org/files/projects/drupal-8.1.3.tar.gz

当你阅读本教程时,可能有一个更新版本的Drupal可用,你可以在https://www.drupal.org/project/drupal.只需用更新的版本号替换8.1.3即可。

下载完成后,使用以下命令解包。这将在当前目录下创建一个drupal-8.1.3目录。

tar xzvf drupal-8.1.3.tar.gz

现在将drupal-8.1.3目录中的所有文件移动到web根目录。如果您遵循了前面的LEMP教程,那么您的web根目录将是/usr/share/nginx/html。

sudo mv drupal-8.1.3/* /usr/share/nginx/html/

为Drupal 8创建数据库和用户

Drupal是一个内容管理系统,因此它需要一个数据库来存储内容。运行以下命令以root身份登录MariaDB shell。请注意,这是MariaDB root用户,而不是Ubuntu系统的root用户。

mysql -u root -p

如果您无法登录MariaDB,请查看如何修复MariaDB插件“unix_socket”未加载错误。

登录后,使用以下命令为Drupal 8创建一个新数据库。我叫它drupal,你可以用任何你喜欢的名字。

create database drupal;

接下来,使用以下命令在localhost上创建一个新的数据库用户。再说一遍,我把它命名为drupaluser,你可以用任何你喜欢的名字。

create user drupaluser@localhost;

为用户设置密码。用首选密码替换密码。

set password for drupaluser@localhost= password("your-password");

然后将新数据库的所有权限授予新用户:

grant all privileges on drupal.* to drupaluser@localhost identified by 'your-password';

刷新特权表:

flush privileges;

退出MariaDB外壳:

exit;

配置Drupal

将工作目录更改为web根目录:

cd /usr/share/nginx/html

将默认设置复制到新文件:

sudo cp sites/default/default.settings.php sites/default/settings.php

向设置添加写入权限。php文件和站点/默认目录

sudo chmod u+w sites/default/settings.php sudo chmod u+w sites/default

现在我们需要将web根目录的所有者更改为Nginx用户。nginx用户通常是nginx或www数据。您可以在/etc/nginx/nginx中查看它。conf文件。

sudo chown nginx:nginx /usr/share/nginx/html/ -R

sudo chown www-data:www-data /usr/share/nginx/html/ -R

为Drupal站点创建一个Nginx配置文件

sudo nano /etc/nginx/conf.d/drupal.conf

将以下文本放入文件中。将红色文本替换为真实域。

server {   listen 80;   server_name www.your-domain.com your-domain.com;   root /usr/share/nginx/html/;   index index.php index.html index.htm;    error_page 404 /404.html;   error_page 500 502 503 504 /50x.html;    location = /50x.html {     root /usr/share/nginx/html;   }    location ~ /..*/.*/.php$ {     return 403;   }    # Block access to hidden directories   location ~ (^|/)/. {     return 403;   }    location ~ ^/sites/.*/private/ {     return 403;   }    # No php is touched for static content   location / {     try_files $uri @rewrite;   }    # Clean URLs   location @rewrite {     rewrite ^ /index.php;   }    # Image styles   location ~ ^/sites/.*/files/styles/ {     try_files $uri @rewrite;   }    location = /favicon.ico {     log_not_found off;     access_log off;   }    location = /robots.txt {     allow all;     log_not_found off;     access_log off;   }    location ~ /.php$ {     try_files $uri =404;     fastcgi_pass unix:/run/php/php7.0-fpm.sock;     fastcgi_index index.php;     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;     fastcgi_split_path_info ^(.+/.php)(/.+)$;     include fastcgi_params;   } }

保存并关闭此文件。然后测试Nginx配置并重新加载Nginx。

sudo nginx -t  sudo systemctl reload nginx

在浏览器中完成Drupal安装

确保你的域名在DNS中指向你的Ubuntu 16.04服务器。然后在浏览器地址栏中键入

your-domain.com

your-domain.com/core/install.php

替换你的域名。使用你的真实域名。您将看到Drupal安装向导,也称为Drupal安装程序。按照说明完成Drupal 8的安装。

Install Drupal 8 on Ubuntu 16.04

如果你看不到安装向导,那可能是因为你的服务器上没有启用一些PHP扩展,比如PHP curl、PHP mbstring、PHP gd。可以使用以下命令启用它们:

sudo apt install php-curl php-mbstring php-gd

现在让我们来完成这些步骤。

选择语言

您在第一步中选择的语言将是Drupal结构和Drupal后端的语言。但是,您可以用其他语言编写内容。如果您想用Drupal构建一个多语言站点,可以在以后配置这些设置。对于本教程,我们选择英语,以便管理员界面使用英语。

选择个人资料

第2步是选择一个安装配置文件。如果您安装的是普通Drupal core,也就是说,而不是Drupal发行版,那么您的选项将是标准的和最少的。如果你是Drupal初学者,你想选择standard。如果你真的是一个高级Drupal用户,喜欢大量定制即将构建的站点,那么你只想选择minimal。

install drupal 8 on Ubuntu 16.04 intallation profile

验证需求

如果您一步一步地遵循本教程,那么需求应该得到成功验证,您不必在这一步中做任何事情。

建立数据库

此步骤是连接到MariaDB数据库。因此,请输入您之前创建的数据库、数据库用户和密码。

drupal 8 connect with mariadb database

单击“保存并继续”按钮,它将开始安装标准安装配置文件附带的40个核心模块。如果选择最小配置文件,那么许多核心模块将不会安装。

install 40 drupal core modules

配置站点

这是最后一步。在站点信息部分,输入您首选的站点名称和站点电子邮件地址。网站电子邮件地址用于向网站用户或网站访问者发送自动电子邮件,以进行注册、密码恢复或其他工作。它用来识别你的网站。如果您不想输入个人电子邮件地址,如[email ;protected],请输入电子邮件地址,如[email ;protected]

drupal site information

站点维护帐户是Drupal站点中的用户1。这就像Linux上的root用户可以在系统中做任何事情,包括对系统有害的事情。在Drupal站点中,使用此站点维护帐户执行正常操作不是最佳做法。选择管理员或网站管理员以外的用户名。这两个用户名很容易猜出来。当您忘记用户1的密码时,将使用电子邮件地址。因此,请输入与网站电子邮件地址不同的电子邮件地址。

Drupal user 1 site maintenance account

然后选择默认国家和默认时区。电子邮件通知将发送到用户1的电子邮件地址。

请记住,以上所有设置稍后都可以更改。最后,单击保存并继续。您将被带到Drupal站点的主页。

install Drupal 8 on Ubuntu 16.04

恭喜!您已经在Ubuntu 16.04上成功安装了Drupal 8,现在可以开始构建Drupal站点了!

欢迎提出意见、问题或建议。如果你觉得这篇文章有用,? 请在社交媒体上与朋友分享!请继续关注更多Linux教程。