介绍 在处理图像时,您可能会遇到希望保留原始纵横比的情况。保留纵横比将防止图像因拉伸或挤压而出现扭曲。此问题的常见解决方案是使用background-imageCSS 属性。更现代的方法是使用object-fitCSS 属性。 在本文中,您将浏览的效果fill,cover,contain,none,并scale-down提供给值object-fitCSS属性以及它如何裁剪和缩放图像。您还将探索object-positionCSS 属性以及它如何偏移图像。 先决条件 如果你想跟随这篇文章,你需要: 了解CSS 属性和值。 使用与style属性内联的 CSS 声明。 一个代码编辑器。 支持object-fit和 的现代网络浏览器object-position。 观察示例图像的默认行为 考虑以下用于显示示例图像的代码: <img src=”https://assets.digitalocean.com/articles/alligator/css/object-fit/example-object-fit.jpg” width=”600″ height=”337″ style=”width: 600px; height: 337px;” alt=”Sample image of a turtle riding on top of an alligator that is swimming in the water – scaled to 600 x 337.” /> 此代码将在浏览器中产生以下结果: 此图像的原始宽度为 1200 像素,高度为 674 ..
Category : 教程系列
该系列的一部分: 常见的 Apache 错误 本教程系列介绍了如何对使用Apache Web 服务器时可能遇到的一些最常见错误进行故障排除和修复。 本系列中的每个教程都包含对常见 Apache 配置、网络、文件系统或权限错误的描述。本系列首先概述了可用于对 Apache 进行故障排除的命令和日志文件。后续教程详细检查特定错误。 介绍 AH00558: Could not reliably determine the server’s fully qualified domain name当 Apache 未配置全局ServerName指令时,会生成一条 Apache消息。该消息主要用于提供信息,AH00558 错误不会阻止 Apache 正常运行。 在本教程中,您将学习如何使用本系列开头的如何对常见 Apache 错误进行故障排除教程中描述的方法检测 AH00558 消息。您还将学习如何设置ServerName指令来解析消息。 如果您已经确定您的 Apache 服务器受到 AH00558 消息的影响,并且您想跳过故障排除步骤,本教程末尾的设置全局ServerName指令步骤说明了如何解决该消息。 故障排除 使用 systemctl 对AH00558: Could not reliably determine the server’s fully qualified domain name消息进行故障排除时的第一步是使用systemctl. systemctl在许多情况下,输出将包含解析消息所需的所有信息。 ..
介绍 虽然通过托管服务运行 WordPress 安装是启动网站的一种便捷方式,但并非没有安全漏洞,有时可能难以排除故障。当这些漏洞被利用时,会发生暴力攻击,即快速猜测和访问个人信息(如登录名或密码)的网络攻击。蛮力攻击可置于任何漏洞中,有时可能源自您的网站。 当在 DigitalOcean 上面临来自 Droplet 的蛮力攻击时,必须快速消除威胁。虽然有多种方法可以识别和删除易受攻击的受损文件,但本教程旨在为您提供一些步骤,以帮助您检测、解决和保护您在 DigitalOcean Droplets 上的 WordPress 安装免受未来漏洞的影响。 步骤 1 — 确定暴力攻击的来源 对从 Droplet 发起的蛮力攻击问题进行故障排除的第一步是确定对恶意流量负责的恶意软件。有许多可用的工具和选项,但 ClamAV ( http://www.clamav.net/ ) 是最初尝试识别和删除恶意软件的好工具。 大多数 Linux 发行版的包管理系统中都有 ClamAV,通常您需要安装 ClamAV,然后运行它。 对于 Ubuntu、Debian 和大多数基于 Debian 的发行版,您可以运行: sudo apt-get install clamav clamav-daemon 对于 CentOS 8,您需要启用 EPEL ( https://fedoraproject.org/wiki/EPEL ) repo,这是 Fedora 项目支持的官方软件包存储库,然后安装 ClamAV。 您可以使用单个命令执行此操作: dnf –enablerepo=epel ..
作为Write for DOnations计划的一部分,作者选择了免费和开源基金来接受捐赠。 介绍 BigBlueButton是一个开源、功能丰富的虚拟教室,您可以在其中教授学生。BigBlueButton 提供演示幻灯片、桌面共享、音频和视频、聊天和虚拟多用户白板,所有这些都包含在浏览器可访问的界面中。 在本指南中,您将安装 BigBlueButton 服务器以及名为 Greenlight 的客户端界面。青睐之光使您的虚拟教室可从任何浏览器访问,并强制使用 HTTPS 以确保信息安全。 先决条件 在开始本指南之前,您需要具备以下条件: 一台 Ubuntu 16.04 64 位服务器。按照Ubuntu 16.04 服务器设置文章创建启用 sudo 的非 root 用户。不要在本指南中安装防火墙,因为这将在安装过程中完成。有关服务器规格,请参阅以下信息。 BigBlueButton 实例需要以下服务器规范: 生产系统 最低8GB RAM,16GB更好。 最少 4 个 CPU 内核,8 个 CPU 内核更好。 测试开发系统 4GB 内存。 2 个 CPU 内核。 BigBlueButton 仅支持 Ubuntu 16.04 LTS。此操作系统不再接收新软件版本等功能更新,但会在 2024 年之前接收安全更新。因此,在面向 Internet 的生产环境中运行是安全的。 ..
介绍 Laravel是一个开源 PHP 框架,它提供了一组工具和资源来构建现代 PHP 应用程序。凭借利用其内置功能的完整生态系统,Laravel 的受欢迎程度在过去几年中迅速增长,许多开发人员采用它作为简化开发过程的首选框架。 在本指南中,您将在 Ubuntu 20.04 服务器上安装和配置一个新的 Laravel 应用程序,使用Composer下载和管理框架依赖项,使用 Nginx 为应用程序提供服务。完成后,您将拥有一个功能强大的 Laravel 演示应用程序,可从 MySQL 8 数据库中提取内容。 先决条件 为了完成本指南,您首先需要在 Ubuntu 20.04 服务器上执行以下任务: 创建sudo用户并启用ufw. 要进行设置,您可以按照我们的Ubuntu 20.04 初始服务器设置指南进行操作。 使用 MySQL 8 安装 LEMP 堆栈。如果您还没有进行设置,您可以按照我们关于如何在 Ubuntu 20.04 上安装 Nginx、MySQL 和 PHP 的指南的步骤 1 到 3 进行操作。 安装作曲家。我们将使用Composer安装 Laravel 及其依赖项。您可以按照我们关于如何在 Ubuntu 20.04 上安装 Composer 的指南来安装 Composer。 ..
作者选择了COVID-19 救济基金来接受捐赠,作为Write for DOnations计划的一部分。 介绍 许多应用程序,例如监控系统和数据收集系统,都会积累数据以供进一步分析。这些分析通常着眼于数据或系统随时间变化的方式。在这些情况下,数据表示为时间序列,每个数据点都带有时间戳。一个示例如下所示: 2020-06-01 09:00:00 server.cpu.1 0.9 2020-06-01 09:00:00 server.cpu.15 0.8 2020-06-01 09:01:00 server.cpu.1 0.9 2020-06-01 09:01:00 server.cpu.15 0.8 … 由于物联网(IoT) 和工业物联网的新部署,时间序列数据的相关性最近有所增加。收集各种时间序列信息的设备越来越多:健身追踪器、智能手表、家庭气象站和各种传感器,仅举几例。这些设备收集了大量信息,所有这些数据都必须存储在某个地方。 经典关系型数据库最常用于存储数据,但它们并不总是适合时间序列的海量数据。当您需要处理大量时间序列数据时,关系数据库可能会太慢。因此,创建了专门优化的数据库,称为NoSQL 数据库,以避免关系数据库的问题。 TimescaleDB是一个为存储时间序列数据而优化的开源数据库。它是作为PostgreSQL的扩展实现的,结合了关系数据库的易用性和 NoSQL 数据库的速度。因此,它允许您使用 PostgreSQL 将业务数据和时间序列数据存储在一个地方。 按照本教程,您将在 Ubuntu 20.04 上设置 TimescaleDB,对其进行配置,并学习如何使用它。您将完成创建时间序列数据库和进行简单查询的过程。最后,您将看到如何删除不必要的数据。 先决条件 要学习本教程,您需要: 按照我们的 Ubuntu 20.04 初始服务器设置指南设置一台 Ubuntu 20.04 服务器,包括具有 sudo 权限和防火墙的非 root 用户。 PostgreSQL 安装在您的服务器上。按照如何在 Ubuntu 20.04 上安装和使用 ..
术语“私有云”是指由使用它们的组织拥有和管理的云服务,并且仅对组织的员工和客户可用。私有云允许组织对其计算环境和存储的数据施加更大的控制,这对于高度监管行业的组织来说可能是必要的。 私有云有时被视为比公共云更安全,因为私有云是通过私有网络访问的,并使组织能够直接监督其云安全。 公共云提供商有时将他们的服务作为可以安装在私有云上的应用程序提供,允许组织在利用公共云的最新创新的同时将其基础设施和数据保留在本地。 更多与私有云相关的教育资源,请访问: 云计算概论 云课程简介 云托管简介 可以在我们的云计算页面上找到我们关于云计算的教育资源的完�..
页面上的元素居中,尤其是垂直居中,在过去使用 CSS 很难做到,我们不得不解决许多黑客问题。值得庆幸的是,Flexbox让这一切变得更容易,我们现在可以将我们的设计精力集中在更高层次的问题上。 以下是使用 Flexbox 使元素居中的非常简单的指南。 水平对中 让我们从一个包含两个段落的div开始,我们希望在同一轴上水平居中。就像在容器上使用值为center的justify-content属性一样简单: 啊! 耶! <div class=”box flex”> <p> <img src=”/images/pirate.svg” width=”75″> arrr! </p> <p> <img src=”/images/cowboy.svg” width=”75″> yeehaw! </p> </div> .box.flex { display: flex; justify-content: center; } .box { padding: .5rem; height: 300px; box-shadow: 2px 2px 5px rgba(0,0,0,0.03); border-radius: 4px; color: #84613D; font-family: “Lucida Console”, Monaco, monospace; background: #FDF9EA; ..
介绍 mark是一种新的语义元素,可用于标记/突出显示与给定上下文相关的文本。本教程回顾了mark元素的实现。 先决条件 HTML5 的一般知识。要全面了解 HTML5 标记语言,请浏览我们的系列“如何用 HTML 构建网站”。 使用mark元素 何时可以使用这些mark元素的一个很好的例子是在搜索结果中突出显示关键字。 例如,假设我们搜索了“狗”: <p> Tell your <mark>dog</mark> to behave! </p> 您可以根据自己的喜好设置标记元素的样式。例如: mark { background-color: rgba(107, 183, 86, 0.95); border-bottom: 2px solid rgb(65, 118, 50); } 这是mark标签的基本用例和实现。 结论 请注意,<mark>不同于<em>或者<strong>在它不添加到高亮显示的内容,这使得它的使用仅限于一些用例的重要性或重点。 要更全面地了解 HTML5 标记语言,请浏览我们的系列,如何用 HTML 构�..
Python 的float()方法将整数转换为浮点数。要使用此函数,请在括号内添加一个整数: float(57) 在这种情况下,57将转换为57.0. 您也可以将其与变量一起使用。让我们声明f为 equal to 57,然后打印出新的浮点数: f = 57 print(float(f)) Output57.0 通过使用该float()函数,我们已将整数转换为浮点数。 如果您想了解有关在 Python 中转换不同数据类型的更多信息,请查看我们的如何在 Python 3 中转换数据类型教程。在我们的“如何使用 Python 3 编码”系列中阅读有关 Python 的更�..