前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在Ubuntu或Debian上更新并保护Drupal 8

在Ubuntu或Debian上更新并保护Drupal 8

原创
作者头像
陈树丶
发布2018-08-20 17:59:16
1.2K0
发布2018-08-20 17:59:16
举报

介绍

Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成。连续多年荣获全球最佳CMS大奖,是基于PHP语言最著名的WEB应用程序。Drupal是一套开源系统,全球数以万计的WEB开发专家都在为Drupal技术社区贡献代码。因此,Drupal的代码在安全性、健壮性上具有世界最高水平。截止2011年底,共有13,802位WEB专家参加了Drupal的开发工作;228个国家使用181种语言的729,791位网站设计工作者使用Drupal。著名案例包括:联合国、美国白宫、美国商务部、纽约时报、华纳、迪斯尼、联邦快递、索尼、美国哈佛大学、Ubuntu等。Drupal 8是流行的Drupal内容管理系统的最新版本。虽然版本8.1中包含简单的增量更新功能,但所有先前版本都需要手动核心更新。本教程演示了如何在Linode上手动安装增量Drupal 8更新。本教程假设您已在Apache和Debian或Ubuntu上运行了功能强大的Drupal 8安装。

准备

  • 在腾讯云CVM服务器上运行以下命令,确认站点的Document Root文件夹的名称:
代码语言:javascript
复制
ls /var/www/html
  • 更新您的系统:
代码语言:javascript
复制
sudo apt-get update && sudo apt-get upgrade

注意

  • 本教程将尽可能使用sudo
  • 您可能需要针对特定应用程序的其他防火墙规则。
  • example.comuser的每个实例替换为适合您站点的名称,将203.0.113.52替换为您的腾讯云CVM服务器的IP地址或域名。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免费的腾讯云开发者实验室进行试验,学会安装后再购买服务器

创建备份

备份现有文件并将存档移动到备份目录中。此过程也可以使用cron编写脚本并定期运行:

代码语言:javascript
复制
cd /var/www/html/example.com/public_html
sudo tar -cvzf example.com-BCKP-$(date +%Y%m%d).tar.gz ./
sudo mv -v example.com-BCKP-*.tar.gz ../backups

下载更新

  • 登录Drupal站点并导航到管理工具栏。单击报告,然后单击可用更新

注意 如果未列出“ 可用更新”,请在“ 扩展”下启用“更新管理器”插件。

  • 右键单击所需版本右侧的“下载”并复制链接地址:
  • 通过SSH连接到您的腾讯云CVM服务器:
代码语言:javascript
复制
ssh user@203.0.113.52
  • 导航到Apache DocumentRoot目录。使用wget并粘贴从第二步复制的链接地址下载新文件:
代码语言:javascript
复制
cd /var/www/html/example.com
wget https://ftp.drupal.org/files/projects/drupal-8.1.1.tar.gz

升级您的站点

将站点置于维护模式

  • 返回浏览器,导航到ConfigurationDevelopmentMaintenance模式
  • 选中“将站点置于维护模式”旁边的框。如果需要,请输入消息,然后单击“ 保存配置”

替换系统文件

  • 在腾讯云CVM服务器上站点的public_html文件夹中,删除除sitesprofiles之外的现有文件和文件夹:
代码语言:javascript
复制
sudo rm -ifr autoload.php composer.* example.gitignore index.php LICENSE.txt README.txt robots.txt update.php web.config && sudo rm -ifr core/ modules/ vendor/ themes/
  • 转到上一个目录,然后将更新扩展到您的public_html文件夹中。用当前更新替换drupal-8.1.1.tar.gz
代码语言:javascript
复制
cd ..
sudo tar -zxvf drupal-8.1.1.tar.gz --strip-components=1 -C public_html
  • 从本地计算机上的浏览器,切换到example.com/update.php

注意 如果update.php未加载或返回403 Forbidden错误,您可以尝试更改新扩展文件的所有权和权限: chgrp www-data /var/www/html/example.com/public_html/sites/default/files chmod 775 /var/www/html/example.com/public_html/sites/default/files chmod 757 /var/www/html/example.com/public_html/sites/default/settings.php

按照提示继续更新。

如果要安装其他模块或配置其他安全设置,请转到下面的“其他安全性”部分。完成这些配置后,请返回下一步。

单击“管理工具栏”中的“ 配置 ”,然后单击“开发”下的“ 性能”,重建站点的缓存。单击“ 清除所有缓存”

点击报告中的管理工具栏,然后状态报告

从您的腾讯云CVM服务器上打开/var/www/html/example.com/public_html/sites/default/settings.php并确认$update_free_access = FALSE

如果一切正常,请通过取消选中“将网站置于维护模式”旁边的框,使网站退出上述维护模式。

额外的安全性

  • 通过添加以下内容到services.yml来提高密码安全性:
代码语言:javascript
复制
# Increase the number of password hash iterations. Minimum = 7; Maximum = 30; Default = 16 
services:
password:
class: Drupal\Core\Password\PhpassHashedPassword
arguments: [19]

注意 您可能需要先为此文件添加写入权限,然后才能对其进行编辑: chmod u + w /var/www/html/example.com/public_html/sites/default/services.yml

现在您已经配置完成了!

想要了解更多关于Drupal的教程,请前往腾讯云+社区学习更多知识。


参考文献:《Update and Secure Drupal 8 on Ubuntu or Debian》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 介绍
  • 准备
  • 创建备份
  • 下载更新
  • 升级您的站点
    • 将站点置于维护模式
      • 替换系统文件
      • 额外的安全性
      相关产品与服务
      云服务器
      云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
      http://www.vxiaotou.com