在本教程中,我们将向您展示如何在 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 官方网站.