介绍 LEMP 软件堆栈是一组可用于为动态网页和 Web 应用程序提供服务的软件。命名为“雷电电磁脉冲”是一个描述的缩写大号inux的操作系统,与(ē)Nginx的网络服务器。后端数据存储在一个中号ariaDB数据库和动态处理是通过处理P HP。 尽管此软件堆栈通常包含MySQL作为数据库管理系统,但一些 Linux 发行版(包括 Debian)使用MariaDB作为 MySQL 的替代品。 在本指南中,您将使用 MariaDB 作为数据库管理系统在 Debian 10 服务器上安装 LEMP 堆栈。 先决条件 要完成本指南,您需要访问 Debian 10 服务器。该服务器应该有一个配置了sudo权限的普通用户和一个启用了ufw. 要进行设置,您可以按照我们的 Debian 10 初始服务器设置指南进行操作。 第 1 步 – 安装 Nginx Web 服务器 为了向您的网站访问者提供网页服务,我们将使用Nginx,这是一种流行的网络服务器,以其整体性能和稳定性而闻名。 您将用于此过程的所有软件都将直接来自 Debian 的默认软件包存储库。这意味着您可以使用apt包管理套件来完成安装。 由于这是您第一次apt在此会话中使用,您应该首先更新您的本地包索引。然后您可以安装服务器: sudo apt update sudo apt install nginx 在 Debian 10 上,Nginx 被配置为在安装时开始运行。 如果您ufw运行了防火墙,则需要允许连接到 ..
Category : 教程系列
介绍 React Helmet是一个动态管理文档head部分的组件。一些常见的用例包括设置title,description以及meta对文档的标签。 当与服务器端渲染结合使用时,它允许您设置meta将由搜索引擎和社交媒体爬虫读取的标签。这使得服务器端渲染和 React Helmet 成为一个强大的组合,用于创建可以从 SEO(搜索引擎优化)和社交媒体数据(如 oEmbed、Facebook Open Graph 或 Twitter Cards)中受益的应用程序。 在本文中,您将探索 React Helmet 在 React 应用程序中的功能。 先决条件 要阅读本文,您需要: 熟悉使用软件包管理器(如npm或 )安装软件包yarn。 熟悉在 React 项目中导入和使用组件。 注意:本教程不会涵盖创建 React 项目或设置服务器端渲染的步骤。请参阅如何为 React 应用程序启用服务器端渲染。 本教程已通过 Node v15.3.0、npmv6.14.9、reactv17.0.1 和react-helmetv6.1.0 验证。 步骤 1 — 将 React Helmet 添加到您的项目中 首先,将组件安装到您的项目中: npm install [email protected] 现在你可以在你的应用程序中使用 React Helmet,方法是将应该放在文档头部的元素作为子Helmet组件添加到组件中: 源代码/App.js import { Helmet ..
介绍 MariaDB是一个开源数据库管理系统,通常用作流行LAMP(Linux、Apache、MySQL、PHP/Python/Perl)堆栈的 MySQL 部分的替代方案。它旨在成为 MySQL 的替代品。 在本教程中,我们将解释如何在 CentOS 8 服务器上安装最新版本的 MariaDB。如果您想知道 MySQL 与 MariaDB,MariaDB 是首选软件包,应该可以代替 MySQL 无缝工作。如果您特别需要 MySQL,请参阅如何在 CentOS 8 上安装 MySQL指南。 先决条件 要学习本教程,您将需要一个 CentOS 8 服务器,它的用户不是root sudo用户。您可以在使用 CentOS 8 设置初始服务器指南中了解有关如何设置具有这些权限的用户的更多信息。 第 1 步 – 安装 MariaDB 首先,使用 dnf 安装 MariaDB 包: sudo dnf install mariadb-server 系统将要求您确认该操作。按y然后ENTER继续。 安装完成后,使用以下命令启动服务systemctl: sudo systemctl start mariadb 然后检查服务的状态: sudo systemctl ..
介绍 一个虚拟专用网(VPN)可以让你,如果你是在专用网络上穿越不受信任的网络。当您连接到不受信任的网络(例如酒店或咖啡店的 WiFi)时,它可以让您自由地通过智能手机或笔记本电脑安全可靠地访问互联网。 与HTTPS 连接结合使用时,此设置可让您确保无线登录和交易的安全。您可以规避地域限制和审查制度,并保护您的位置和来自不受信任网络的任何未加密的 HTTP 流量。 OpenVPN是一个功能齐全的开源传输层安全 (TLS) VPN 解决方案,可适应多种配置。在本教程中,您将在 CentOS 8 服务器上设置 OpenVPN,然后将其配置为可从客户端计算机访问。 注意:如果您打算在 DigitalOcean Droplet 上设置 OpenVPN 服务器,请注意,与许多托管服务提供商一样,我们会对超额带宽收费。因此,请注意您的服务器处理的流量。 有关更多信息,请参阅此页面。 先决条件 要学习本教程,您需要: 一台启用了 sudo 非 root 用户和防火墙的 CentOS 8 服务器。要进行设置,您可以按照我们的CentOS 8 初始服务器设置教程进行操作。我们将在本指南中将其称为OpenVPN 服务器。 一个单独的 CentOS 8 服务器设置为私有证书颁发机构 (CA),我们将在本指南中将其称为CA 服务器。在此服务器上执行初始服务器设置指南中的步骤后,您可以按照我们关于如何在 CentOS 8 上设置和配置证书颁发机构 (CA)的指南的步骤 1 到 3来完成该操作。 注意:虽然技术上可以使用您的 OpenVPN 服务器或您的本地机器作为您的 CA,但不建议这样做,因为它会打开您的 VPN 的一些安全漏洞。根据官方 OpenVPN ..
所述Renderer2类是由角在一个服务的形式,其允许操纵应用程式的元件,而不必直接触摸DOM提供的抽象。这是推荐的方法,因为这样可以更轻松地开发可以在没有 DOM 访问权限的环境中呈现的应用程序,例如在服务器、Web 工作者或本地移动设备上。 请注意,原来的Renderer服务现已弃用,取而代之的是Renderer2 基本用法 你会经常在自定义指令中使用Renderer2,因为 Angular 指令是修改元素的逻辑构建块。这是一个简单的示例,它使用 Renderer2 的addClass方法将百搭类添加到具有指令的元素: go-wild.directive.ts import { Directive, Renderer2, ElementRef, OnInit } from ‘@angular/core’; @Directive({ selector: ‘[appGoWild]’ }) export class GoWildDirective implements OnInit { constructor(private renderer: Renderer2, private el: ElementRef) {} 请注意我们还如何使用ElementRef来访问我们的指令附加到的下划线本机元素。 现在,您可以将指令添加到模板中的元素,并在呈现时添加百搭类: <h1 appGoWild> Hello World! </h1> <!– <h1 class=”wild”>Hello World!</h1> –> 可以看到整体使用Renderer2并不比直接操作DOM复杂。现在让我们回顾一些最有用的方法: createElement / appendChild / ..
介绍 一个证书颁发机构(CA)负责发放数字证书来验证在互联网上的身份的实体。尽管公共 CA 是验证网站身份和提供给公众的其他服务的流行选择,但私有 CA 通常用于封闭组和私有服务。 构建私有证书颁发机构将使您能够配置、测试和运行需要在客户端和服务器之间进行加密连接的程序。借助私有 CA,您可以为基础架构中的用户、服务器或单个程序和服务颁发证书。 Linux 上使用自己私有 CA 的一些程序示例是OpenVPN和Puppet。您还可以将 Web 服务器配置为使用由私有 CA 颁发的证书,以便使开发和登台环境与使用 TLS 加密连接的生产服务器相匹配。 在本指南中,我们将学习如何在 CentOS 8 服务器上设置私有证书颁发机构,以及如何使用您的新 CA 生成和签署测试证书。您还将学习如何将 CA 服务器的公共证书导入操作系统的证书库,以便验证 CA 与远程服务器或用户之间的信任链。最后,您将学习如何吊销证书并分发证书吊销列表,以确保只有授权用户和系统才能使用依赖于您的 CA 的服务。 先决条件 要学习本教程,您需要一台sudo启用了非 root 用户的 CentOS 8 服务器,以及设置了firewalld. 您可以按照我们的CentOS 8 初始服务器设置指南来完成该设置。 此服务器将在本教程中称为CA 服务器。 确保 CA 服务器是独立系统。它仅用于导入、签署和撤销证书请求。它不应运行任何其他服务,理想情况下,当您不主动使用 CA 时,它将处于脱机状态或完全关闭。 注意:如果您想了解签名和撤销证书,本教程的最后一部分是可选的。如果您选择完成这些练习步骤,您将需要第二台 CentOS 8 服务器,或者您也可以使用您自己的本地 Linux 计算机运行 CentOS 8、Fedora ..
布尔值是一种数据类型,它只有两个可能值之一:真或假。布尔值代表与数学逻辑分支相关的真值,它为计算机科学中的算法提供信息。在编程中,布尔值用于进行比较和控制程序的流程。 有关布尔值的更多资源,请访问: 理解 Python 3 中的布尔逻辑 理解 Go 中的布尔逻辑 我们的开发相关教程、问题和其他教育资源的完整列表可以在我们的开发标签页�..
介绍 该角材质库报价角分量的一套风格与材料设计。一种这样的组件是<mat-icon>组件。有大量现成的 Material 图标。但是如果我们想要显示一些自定义图标同时与 Material Design 样式保持一致怎么办?让我们学习如何在 Angular Material 组件中使用我们自己的 SVG 图标。 在本教程中,您将使用该<mat-icon>组件来使用标准的 Material Icons 字体。然后,您将使用该<mat-icon>组件来支持自定义 SVG 图标。 完整的工作代码可以在这个 GitHub repo 上找到。 先决条件 要完成本教程,您需要: Node.js 安装在本地,您可以按照如何安装 Node.js 和创建本地开发环境来完成。 这篇文章假设您对 Angular v4.2+ 有一些基本的了解。 本教程最初是用 Angular v5.2+ 和 Angular Material v5.2.4 编写的。 本教程已通过 Angular v10.0.5 和 Angular Material v10.1.1 验证。 如果您开始使用 Angular Material,可以参考这篇文章。 第 1 步 – ..
作者选择了COVID-19 救济基金来接受捐赠,作为Write for DOnations计划的一部分。 介绍 在 Node.js 开发中,将编码错误追溯到其源头可以在项目过程中节省大量时间。但是随着程序复杂性的增加,有效地做到这一点变得越来越困难。为了解决这个问题,开发人员使用调试器之类的工具,该程序允许开发人员在程序运行时对其进行检查。通过逐行重放代码并观察它如何改变程序状态,调试器可以深入了解程序的运行方式,从而更容易找到错误。 程序员用来跟踪代码中错误的常见做法是在程序运行时打印语句。在 Node.js 中,这涉及在其模块中添加额外的console.log()orconsole.debug()语句。虽然这种技术可以快速使用,但它也是手动的,因此可扩展性较差且更容易出错。使用这种方法,可能会错误地将敏感信息记录到控制台,这可能会向恶意代理提供有关客户或您的应用程序的私人信息。另一方面,调试器提供了一种系统的方法来观察程序中发生的事情,而不会将您的程序暴露在安全威胁之下。 调试器的主要功能是观察对象和添加断点。通过观察对象,调试器可以在程序员逐步执行程序时帮助跟踪变量的变化。断点是程序员可以放置在他们的代码中以阻止代码继续超出开发人员正在调查的点的标记。 在本文中,您将使用调试器来调试一些示例 Node.js 应用程序。您将首先使用内置的Node.js 调试器工具调试代码,设置观察器和断点,以便您可以找到错误的根本原因。然后,您将使用Google Chrome DevTools作为命令行 Node.js 调试器的图形用户界面 (GUI)替代方案。 先决条件 您需要在开发环境中安装 Node.js。本教程使用版本 10.19.0。要在 macOS 或 Ubuntu 18.04 上安装它,请按照如何在 macOS 上安装 Node.js 和创建本地开发环境或如何在 Ubuntu 18.04 上安装 Node.js 的使用 PPA 安装部分中的步骤进行操作。 对于本文,我们希望用户熟悉基本的 JavaScript,尤其是创建和使用函数。您可以通过阅读我们的如何在 JavaScript 中编码系列来了解这些基础知识以及更多内容。 要使用 Chrome DevTools 调试器,您需要下载并安装Google Chrome 网络浏览器或开源Chromium 网络浏览器。 第 1 步 ..
介绍 在本快速入门指南中,我们将在 Ubuntu 20.04 服务器上安装 LAMP 堆栈。 有关本教程的更详细版本以及每个步骤的更多解释,请参阅如何在 Ubuntu 20.04 上安装 Linux、Apache、MySQL、PHP (LAMP) 堆栈 先决条件 要遵循本指南,您需要以sudo用户身份访问 Ubuntu 20.04 服务器。 第 1 步 – 安装 Apache 更新您的包管理器缓存,然后使用以下命令安装 Apache: sudo apt update sudo apt install apache2 安装完成后,您需要调整防火墙设置以允许服务器上的 HTTP 流量。运行以下命令以允许端口80(HTTP)上的外部访问: sudo ufw allow in “Apache” 添加新的防火墙规则后,您可以通过从 Web 浏览器访问服务器的公共 IP 地址或域名来测试服务器是否已启动并正在运行。你会看到一个这样的页面: 第 2 步 – 安装 MySQL 我们现在将安装 MySQL,这是一种在 ..