如何在 CentOS 7 上安装 Drupal

在本教程中,我们将向您展示如何在 CentOS 7 上安装 Drupal。对于那些不知道的人,Drupal 是一个开源的,也是最流行的基于 PHP 的内容管理系统 (CMS) 平台之一,用于构建个人博客或大型企业网站。 它有数以千计的模板和插件,大部分都可以免费下载和安装。 由于基础的稳定性、平台的适应性和活跃的社区,Drupal 在出现十多年后仍然是一个受欢迎的选择。

本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单。 我将向您展示在 CentOS 7 上逐步安装 Drupal。

先决条件

  • 运行以下操作系统之一的服务器:CentOS 7。
  • 建议您使用全新的操作系统安装来防止任何潜在问题。
  • 对服务器的 SSH 访问(或者如果您在桌面上,则只需打开终端)。
  • 一种 non-root sudo user或访问 root user. 我们建议充当 non-root sudo user,但是,如果您在充当 root 时不小心,可能会损害您的系统。

在 CentOS 7 上安装 Drupal

步骤 1. 首先,确保所有软件包都是最新的。

yum -y update

步骤 2. 安装 LAMP 服务器并包含一些 PHP 扩展。

在 CentOS 7 中安装 MariaDB 数据库服务器:

yum -y install mariadb-server mariadb

在 CentOS 7 中安装 Nginx 网络服务器:

rpm -ivh https://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm yum -y install nginx

安装 PHP5 并包含一些 PHP 扩展:

yum -y install php php-gd php-ldap php-fpm php-xml php-xmlrpc php-mbstring php-snmp curl curl-devel php-mysql

启动 LAMP 服务,启用开机启动:

systemctl start mariadb.service systemctl enable mariadb.service systemctl start nginx.service systemctl enable nginx.service

步骤 3. 为 Drupal 配置 MariaDB。

默认情况下,MariaDB 未加固。 您可以使用 mysql_secure_installation 脚本。 您应该仔细阅读下面的每个步骤,这些步骤将设置 root 密码,删除匿名用户,禁止远程 root 登录,并删除测试数据库和访问安全 MySQL:

mysql_secure_installation

接下来,我们需要登录 MariaDB 控制台并为 Drupal 创建一个数据库。 运行以下命令:

mysql -u root -p

这将提示您输入密码,因此输入您的 MariaDB 根密码并点击 Enter. 登录到数据库服务器后,您需要为 Drupal 安装创建一个数据库:

CREATE DATABASE drupaldb; CREATE USER [email protected] IDENTIFIED BY 'password_here'; GRANT ALL PRIVILEGES ON drupaldb.* TO [email protected]; FLUSH PRIVILEGES; exit

步骤 4. 在 CentOS 7 上安装 Drupal。

下载最新的稳定版 Drupal,在撰写本文时它是 7.37 版:

wget https://ftp.drupal.org/files/projects/drupal-7.37.tar.gz tar xzvf drupal* mv -v drupal*/* /var/www/html/

我们将需要更改一些文件夹权限:

chown -R nginx:nginx /var/www/html/

步骤 5. 配置 Nginx Web 服务器。

配置 Nginx Web 服务器,以便您可以使用您的域名访问服务器上的 Drupal 目录:

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

然后配置文件如下图:

server {     server_name domain.com;     listen 80;     root /var/www/html/drupal;     access_log /var/log/nginx/domain.com-access.log;     error_log /var/log/nginx/domain.com-error.log;     index index.php;      location / {         try_files  $uri $uri/ /index.php?$args;     }      location ~* .(jpg|jpeg|gif|css|png|js|ico|html)$ {         access_log off;         expires max;     }     location ~ /.ht {         deny  all;     }     location ~ .php {         try_files $uri = 404;         fastcgi_pass 127.0.0.1:9000;         fastcgi_index index.php;         include /etc/nginx/fastcgi_params;         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;     } }

Save 文件并重新启动 Nginx:

systemctl restart php-fpm.service systemctl restart nginx.service

步骤 6. 配置防火墙。

要远程访问 Drupal,您必须通过防火墙启用端口 80。 如果可能,也启用端口 443。 运行以下命令:

firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload

步骤 7. 访问 Drupal。

默认情况下,Drupal 将在 HTTP 端口 80 上可用。 打开您喜欢的浏览器并导航到 https://your-domain.com 或者 https://your-server-ip 并完成所需的步骤以完成安装。 如果您使用防火墙,请打开端口 80 以启用对控制面板的访问。

恭喜! 您已成功安装 Drupal。 感谢您使用本教程在 CentOS 7 系统上安装 Drupal CMS。 如需更多帮助或有用信息,我们建议您查看 Drupal 官方网站.