在 RHEL、CentOS 及 Fedora 上安装 Drupal 8

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介:

Drupal 是一个开源,灵活,高度可拓展和安全的内容管理系统Content Management System(CMS),使用户轻松的创建网站。

它可以使用模块拓展,使用户将内容管理转换为强大的数字解决方案。

Drupal 运行在诸如 Apache、IIS、Lighttpd、Cherokee、Nginx 的 Web 服务器上,后端数据库可以使用 MySQL、MongoDB、MariaDB、PostgreSQL、MSSQL Server。

在这篇文章中, 我们会展示在 RHEL 7/6、CentOS 7/6 和 Fedora 20-25 发行版上使用 LAMP 架构,如何手动安装和配置 Drupal 8。

Drupal 需求:

  1. Apache 2.x (推荐)
  2. PHP 5.5.9 或 更高 (推荐 PHP 5.5)
  3. MySQL 5.5.3 或 MariaDB 5.5.20 与 PHP 数据对象(PDO) 支持

安装过程中,我使用 drupal.tecmint.com 作为网站主机名,IP 地址为 192.168.0.104。你的环境也许与这些设置不同,因此请适当做出更改。

步骤 1:安装 Apache Web 服务器

1、 首先我们从官方仓库开始安装 Apache Web 服务器。


 
 
  1. # yum install httpd

2、 安装完成后,服务开始是被禁用的,因此我们需要手动启动它,同时让它下次系统启动时自动启动,如下:


 
 
  1. ------------- 通过 SystemD - CentOS/RHEL 7 Fedora 22+ -------------------
  2. # systemctl start httpd
  3. # systemctl enable httpd
  4. ------------- 通过 SysVInit - CentOS/RHEL 6 Fedora ----------------------
  5. # service httpd start
  6. # chkconfig --level 35 httpd on

3、 接下来,为了允许通过 HTTP 和 HTTPS 访问 Apache 服务,我们必须打开 HTTPD 守护进程正在监听的 80和 443 端口,如下所示:


 
 
  1. ------------ 通过 Firewalld - CentOS/RHEL 7 and Fedora 22+ -------------
  2. # firewall-cmd --permanent --zone=public --add-service=http
  3. # firewall-cmd --permanent --zone=public --add-service=https
  4. # firewall-cmd --reload
  5. ------------ 通过 IPtables - CentOS/RHEL 6 and Fedora 22+ -------------
  6. # iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
  7. # iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
  8. # service iptables save
  9. # service iptables restart

4、 现在验证 Apache 是否正常工作, 打开浏览器在地址栏中输入 http://server_IP, 输入你的服务器 IP 地址, 默认 Apache2 页面应出现,如下面截图所示:

Apache 默认页面

Apache 默认页面

步骤 2: 安装 Apache PHP 支持

5、 接下来,安装 PHP 和 PHP 所需模块。


 
 
  1. # yum install php php-mbstring php-gd php-xml php-pear php-fpm php-mysql php-pdo php-opcache

重要: 假如你想要安装 PHP7, 你需要增加以下仓库:EPEL 和 Webtactic 才可以使用 yum 安装 PHP7.0:


 
 
  1. ------------- Install PHP 7 in CentOS/RHEL and Fedora -------------
  2. # rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
  3. # rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  4. # yum install php70w php70w-opcache php70w-mbstring php70w-gd php70w-xml php70w-pear php70w-fpm php70w-mysql php70w-pdo

6、 接下来,要从浏览器得到关于 PHP 安装和配置完整信息,使用下面命令在 Apache 文档根目录 (/var/www/html) 创建一个 info.php 文件。


 
 
  1. # echo "<?php phpinfo(); ?>" > /var/www/html/info.php

然后重启 HTTPD 服务器 ,在浏览器地址栏输入 http://server_IP/info.php


 
 
  1. # systemctl restart httpd
  2. # service httpd restart

验证 PHP 信息

验证 PHP 信息

步骤 3: 安装和配置 MariaDB 数据库

7、 请知晓, Red Hat Enterprise Linux/CentOS 7.0 从支持 MySQL 转为了 MariaDB 作为默认数据库管理系统。

要安装 MariaDB 数据库, 你需要添加 官方 MariaDB 库 到 /etc/yum.repos.d/MariaDB.repo 中,如下所示。


 
 
  1. [mariadb]
  2. name = MariaDB
  3. baseurl = http://yum.mariadb.org/10.1/centos7-amd64
  4. gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
  5. gpgcheck=1

当仓库文件准备好后,你可以像这样安装 MariaDB:


 
 
  1. # yum install mariadb-server mariadb

8、 当 MariaDB 数据库安装完成,启动数据库的守护进程,同时使它能够在下次启动后自动启动。


 
 
  1. ------------- 通过 SystemD - CentOS/RHEL 7 and Fedora 22+ -------------
  2. # systemctl start mariadb
  3. # systemctl enable mariadb
  4. ------------- 通过 SysVInit - CentOS/RHEL 6 and Fedora -------------
  5. # service mysqld start
  6. # chkconfig --level 35 mysqld on

9、 然后运行 mysql_secure_installation 脚本去保护数据库(设置 root 密码, 禁用远程登录,移除测试数据库并移除匿名用户),如下所示:


 
 
  1. # mysql_secure_installation

MySQL 安全安装

MySQL 安全安装

步骤 4: 在 CentOS 中安装和配置 Drupal 8

10、 这里我们使用 wget 命令 下载最新版本 Drupal(例如 8.2.6),如果你没有安装 wget 和 gzip 包 ,请使用下面命令安装它们:


 
 
  1. # yum install wget gzip
  2. # wget -c https://ftp.drupal.org/files/projects/drupal-8.2.6.tar.gz

11、 之后,解压 tar 文件 并移动 Drupal 目录到 Apache 文档根目录(/var/www/html)。


 
 
  1. # tar -zxvf drupal-8.2.6.tar.gz
  2. # mv drupal-8.2.6 /var/www/html/drupal

12、 然后,依据 /var/www/html/drupal/sites/default 目录下的示例设置文件 default.settings.php,创建设置文件 settings.php,然后给 Drupal 站点目录设置适当权限,包括子目录和文件,如下所示:


 
 
  1. # cd /var/www/html/drupal/sites/default/
  2. # cp default.settings.php settings.php
  3. # chown -R apache:apache /var/www/html/drupal/

13、 更重要的是在 /var/www/html/drupal/sites/ 目录设置 SElinux 规则,如下:


 
 
  1. # chcon -R -t httpd_sys_content_rw_t /var/www/html/drupal/sites/

14、 现在我们必须为 Drupal 站点去创建一个用于管理的数据库和用户。


 
 
  1. # mysql -u root -p
  2. Enter password:
  3. MySQL Shell
  4. Welcome to the MariaDB monitor. Commands end with ; or \g.
  5. Your MySQL connection id is 12
  6. Server version: 5.1.73 Source distribution
  7. Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
  8. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  9. **MySQL [(none)]> create database drupal;**
  10. Query OK, 1 row affected (0.00 sec)
  11. **MySQL [(none)]> create user ravi@localhost identified by 'tecmint123';**
  12. Query OK, 0 rows affected (0.00 sec)
  13. **MySQL [(none)]> grant all on drupal.* to ravi@localhost;**
  14. Query OK, 0 rows affected (0.00 sec)
  15. **MySQL [(none)]> flush privileges;**
  16. Query OK, 0 rows affected (0.00 sec)
  17. **MySQL [(none)]> exit**
  18. Bye

15、 最后,打开地址: http://server_IP/drupal/ 开始网站的安装,选择你首选的安装语言然后点击保存以继续。

Drupal 安装语言

Drupal 安装语言

16、 下一步,选择安装配置文件,选择 Standard(标准),点击保存继续。

Drupal 安装配置文件

Drupal 安装配置文件

17、 在进行下一步之前查看并通过需求审查并启用 Clean URL

验证 Drupal 需求

验证 Drupal 需求

现在在你的 Apache 配置下启用 Clean URL 的 Drupal。


 
 
  1. # vi /etc/httpd/conf/httpd.conf

确保为默认根文档目录 /var/www/html 设置 AllowOverride All,如下图所示:

在 Drupal 中启用 Clean URL

在 Drupal 中启用 Clean URL

18、 当你为 Drupal 启用 Clean URL,刷新页面从下面界面执行数据库配置,输入 Drupal 站点数据库名,数据库用户和数据库密码。

当填写完所有信息点击保存并继续

Drupal 数据库配置

Drupal 数据库配置

若上述设置正确,Drupal 站点安装应该完成了,如下图界面。

Drupal 安装

Drupal 安装

19、 接下来配置站点为下面的设置(使用适用你的情况的值):

  • 站点名称  – TecMint Drupal Site
  • 站点邮箱地址  – admin@tecmint.com
  • 用户名  – admin
  • 密码  – ##########
  • 用户的邮箱地址  – admin@tecmint.com
  • 默认国家  – India
  • 默认时区  – UTC

设置适当的值后,点击保存并继续完成站点安装过程。

Drupal 站点配置

Drupal 站点配置

20、下图显示的是通过 LAMP 成功安装的 Drupal 8 站点。

Drupal 站点面板

Drupal 站点面板

原文发布时间为:2017-04-22

本文来自云栖社区合作伙伴“Linux中国”

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
4月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
773 69
|
3月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
1096 2
|
4月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
388 78
|
3月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
584 16
|
5月前
|
Linux 网络安全 Apache
针对在Centos/Linux安装Apache过程中出现的常见问题集锦
以上每个问题的解决方案应深入分析错误日志、系统消息和各种配置文件,以找到根本原因并加以解决。务必保持系统和Apache软件包更新到最新版本,以修复已知的bugs和安全漏洞。安装和管理Web服务器是一项需要细致关注和不断学习的任务。随着技术的发展,推荐定期查看官方文档和社区论坛,以保持知识的更新。
241 80
|
4月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
335 10
|
5月前
|
人工智能 数据挖掘 Linux
Centos安装Python3.7(亲测可用)
本指南详细介绍了在基于Linux(以CentOS系统为例,使用yum包管理器)的系统上安装Python 3.7版本的完整流程。Python是一种广泛使用的高级编程语言,在各种领域如软件开发、数据分析、人工智能和区块链开发等都有着重要的应用。
491 2
|
4月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
376 0
|
4月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。