在CentOS 7上安装和配置Drupal 9

这是续集。
您可以通过以下链接以PDF格式下载本文,以为我们提供支持。

以PDF格式下载指南


这是续集。

这是续集。
这是续集。

Drupal是一个免费的开源内容管理平台,旨在有效创建专业内容。 Drupal使创建网站,在线内容和用户参与社区变得容易。 Drupal用PHP编写,并使用数据库后端存储数据(MySQL,MariaDB,SQLite,PostgreSQL)。本指南提供在CentOS 7 Linux系统上安装和配置Drupal 9所需的步骤。

以下是在CentOS 7上运行Drupal 9的最低要求。

  • PHP> = 7.3
  • MySQL或Percona,版本> = 5.7.8
  • MariaDB> = 10.3.7
  • PostgreSQL> = 10

Drupal 9的一些功能是:

  • 布局制作器:允许内容编辑者无需设计即可设计页面
  • API优先架构:可构建健壮,隔离的无头应用程序
  • 媒体库:管理图像,视频和其他资产从未如此简单。
  • 自动更新
  • 新的管理界面和默认主题

在CentOS 7上安装和配置Drupal 9

本节描述了在CentOS 7上运行Dental所需的依赖项安装。本指南中使用的Web服务器是Apache,但是您也可以使用Nginx或其他Web服务器。 Drupal的主要功能之一是其定制级别,其中提供了许多附加组件。

步骤1:安装数据库服务器

选择您要使用的数据库服务器。您可以为此使用MySQL,MariaDB或PostgreSQL。本指南使用MariaDB数据库服务器。

在安装数据库之前更新并重新启动系统。

sudo yum -y update
sudo systemctl reboot

然后,请参阅有关在CentOS 7上安装MariaDB的指南。

如何在CentOS 7上安装MariaDB

步骤2:创建Drupal数据库

要运行Drupal CMS,需要数据库和用户。打开MariaDB shell。

$ mysql -u root -p

创建一个Drupal数据库和用户。

CREATE DATABASE drupal;
GRANT ALL ON drupal.* TO 'drupal'@'localhost' IDENTIFIED BY '[email protected]';
FLUSH PRIVILEGES;
q

步骤3:安装PHP和所需的扩展

您必须安装PHP 7.3或更高版本的Drupal 9。此安装需要EPEL和REMI存储库。

sudo yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install epel-release

启用PHP 7.3 REMI存储库。

sudo yum -y install yum-utils
sudo yum-config-manager --disable remi-php54
sudo yum-config-manager --enable remi-php73

在CentOS 7上安装PHP 7.3。

sudo yum -y install php php-{cli,gd,mysqlnd,mbstring,json,common,dba,dbg,devel,embedded,enchant,bcmath,gmp,intl,ldap,odbc,pdo,opcache,pear,pgsql,process,recode,snmp,soap,xml,xmlrpc}

检查PHP版本。

$ php -v
PHP 7.3.19 (cli) (built: Jun  9 2020 08:06:30) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.19, Copyright (c) 1998-2018 Zend Technologies

步骤4:安装Web服务器

本指南使用Apache作为CentOS 7上Drupal的Web服务器。

sudo yum -y install httpd

设置PHP时区和内存限制。

$ sudo vi /etc/php.ini
memory_limit = 256M
date.timezone = Africa/Nairobi

启动并启用httpd服务。

sudo systemctl enable --now httpd

在防火墙中允许http和https协议。

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

检查httpd服务是否正在运行。

$ systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2020-06-28 16:24:26 CEST; 2min 48s ago
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 2708 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
 Main PID: 2713 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─2713 /usr/sbin/httpd -DFOREGROUND
           ├─2714 /usr/sbin/httpd -DFOREGROUND
           ├─2715 /usr/sbin/httpd -DFOREGROUND
           ├─2716 /usr/sbin/httpd -DFOREGROUND
           ├─2717 /usr/sbin/httpd -DFOREGROUND
           └─2718 /usr/sbin/httpd -DFOREGROUND

Jun 28 16:24:26 centos.computingforgeeks.com systemd[1]: Starting The Apache HTTP Server...
Jun 28 16:24:26 centos.computingforgeeks.com systemd[1]: Started The Apache HTTP Server.

步骤5:在CentOS 7上下载Drupal 9

下载Drupal 9压缩包。

sudo yum install -y wget
wget https://www.drupal.org/download-latest/tar.gz -O drupal.tar.gz

解压缩下载的文件。

tar xvf drupal.tar.gz

将结果文件夹移到/ var / www / html目录。

rm -f drupal*.tar.gz
sudo mv drupal-*/  /var/www/html/drupal

检查文件的内容。

$ ls /var/www/html/drupal
autoload.php   core               INSTALL.txt  profiles    sites       vendor
composer.json  example.gitignore  LICENSE.txt  README.txt  themes      web.config
composer.lock  index.php          modules      robots.txt  update.php

创建Drupal安装程序所需的其他目录和文件。

sudo mkdir /var/www/html/drupal/sites/default/files
sudo cp /var/www/html/drupal/sites/default/default.settings.php /var/www/html/drupal/sites/default/settings.php

将drupal目录的所有权设置为Apache用户和组。

sudo chown -R apache:apache /var/www/html/
sudo chmod -R 755 /var/www/html/

更正SELinux标签。

sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/drupal(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/drupal/sites/default/settings.php'
sudo semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/drupal/sites/default/files'
sudo restorecon -Rv /var/www/html/drupal
sudo restorecon -v /var/www/html/drupal/sites/default/settings.php
sudo restorecon -Rv /var/www/html/drupal/sites/default/files

步骤6:为Drupal配置Apache

为Drupal网站创建一个新的Apache配置。

sudo vi /etc/httpd/conf.d/drupal.conf

修改以下内容并将其添加到文件中-为您的域,管理员用户和Drupal数据设置正确的路径。


     ServerName mysite.com
     ServerAlias www.mysite.com
     ServerAdmin [email protected]
     DocumentRoot /var/www/html/drupal/

     CustomLog /var/log/httpd/access_log combined
     ErrorLog /var/log/httpd/error_log

     
            Options Indexes FollowSymLinks
            AllowOverride All
            Require all granted
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteCond %{REQUEST_FILENAME} !-d
            RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
     

检查配置语法。

$ sudo apachectl -t
Syntax OK

重新启动httpd Web服务器。

systemctl restart httpd

步骤7:在CentOS 7上安装Drupal 9

打开您喜欢的Web浏览器,然后在CentOS 7上完成Drupal 9的安装。

选择安装语言:

选择要使用的安装配置文件。

在CentOS 7上安装和配置Drupal 9

设置先前配置的Drupal数据库访问详细信息。

在CentOS 7上安装和配置Drupal 9

等待它完成。

在CentOS 7上安装和配置Drupal 9

配置站点

在CentOS 7上安装和配置Drupal 9

完成后,将显示网站的管理控制台。

在CentOS 7上安装和配置Drupal 9

请参阅 官方文件 有关自定义Drupal和其他配置选项的更多信息,

对于https访问, Drupal SSL配置 指南

在其他系统上安装:

在Ubuntu上安装Drupal 9 CMS

在CentOS 8上安装Drupal 9

阅读书籍:

最佳Web开发学习书籍-PHP,HTML,CSS,JavaScript,jQuery

这是续集。
您可以通过以下链接以PDF格式下载本文,以为我们提供支持。

以PDF格式下载指南


这是续集。

这是续集。
这是续集。

Sidebar