介绍 UTF-8 是网络上最常见的字符编码。您可以使用<meta charset>HTML5 中的标签设置 UTF-8 编码和其他格式。 先决条件 HTML5 的一般知识。要全面了解 HTML5 标记语言,请浏览我们的系列“如何用 HTML 构建网站”。 使用<meta charset>HTML 标签设置 UTF-8 <head>文档开始标记之后的第一个元素应该是<meta charset>定义使用的字符集的标记。UTF-8 字符集是现代网络的正确选择。这是它的标记: <meta charset=”UTF-8″> 这就是charset定义在 HTML5 中的工作方式 结论 <meta charset> 只是 HTML5 中众多常见标签之一。 要更全面地了解 HTML5 标记语言,请浏览我们的系列,如何用 HTML 构�..
Category : 教程系列
介绍 像许多计算机语言一样,SQL 允许使用各种通配符。通配符是特殊的占位符,可以表示一个或多个其他字符或值。这是 SQL 中的一个方便功能,因为它允许您在不知道其中保存的确切值的情况下搜索数据库中的数据。 本指南将介绍如何使用 SQL 的指定通配符查询数据。 先决条件 为了遵循本指南,您需要一台运行某种类型的使用 SQL 的关系数据库管理系统 (RDBMS) 的计算机。本指南中的说明和示例已使用以下环境进行验证: 运行 Ubuntu 20.04 的服务器,具有管理权限的非 root 用户和使用 UFW 配置的防火墙,如我们的 Ubuntu 20.04 初始服务器设置指南中所述。 在服务器上安装并保护 MySQL,如如何在 Ubuntu 20.04 上安装 MySQL 中所述。本指南已使用非 root MySQL 用户进行验证,该用户使用步骤 3中描述的过程创建。 注意:请注意,许多 RDBMS 使用自己独特的 SQL 实现。尽管本教程中概述的命令适用于大多数 RDBMS,但如果您在 MySQL 以外的系统上测试它们,则确切的语法或输出可能会有所不同。 您还需要一个加载了一些示例数据的数据库和表,您可以练习使用通配符。如果您没有这个,您可以阅读以下连接到 MySQL 和设置示例数据库部分,以了解有关如何创建本指南将在整个示例中使用的数据库和表的详细信息。 连接到 MySQL 并设置示例数据库 如果您的 SQL 数据库系统在远程服务器上运行,请从本地计算机通过 SSH 连接到您的服务器: ..
介绍 TensorFlow是一个开源机器学习软件库,用于训练神经网络。以有状态数据流图的形式表示,图中的每个节点代表神经网络对多维数组执行的操作。这些多维数组通常被称为“张量”,因此得名 TensorFlow。 在本教程中,您将使用virtualenv. 这种方法隔离了 TensorFlow 安装并快速启动和运行。完成安装后,您将通过导入 Tensorflow 来验证您的安装,以确保没有错误。 先决条件 在开始本教程之前,您需要具备以下条件: 按照Ubuntu 20.04 初始服务器设置指南设置一台至少具有4GB RAM的 Ubuntu 20.04 服务器,包括 sudo 非 root 用户和防火墙。 Python 3.8 或更高版本并virtualenv已安装。按照如何在 Ubuntu 20.04 上安装 Python 3来配置 Python 和virtualenv. 步骤 1 — 创建编程环境 在这一步中,我们将创建一个虚拟环境,以便在不影响其他编程项目的情况下将 TensorFlow 安装到其中。如果您已经设置了一个干净的编程环境,请跳过此步骤。 首先,创建一个项目目录。我们将tf-demo出于演示目的而调用它,但请选择一个对您有意义的目录名称: mkdir ~/tf-demo 导航到您新创建的tf-demo目录: cd ~/tf-demo 然后创建一个名为 的新虚拟环境tensorflow-dev,例如。运行以下命令创建环境: python3 -m venv tensorflow-dev 这将创建一个新tensorflow-dev目录,其中将包含您在此环境激活时安装的所有软件包。它还包括pip一个独立版本的 Python。 现在激活您的虚拟环境: source ..
介绍 该WebView插件允许您在 Flutter 应用程序中显示网页。 在本教程中,您将创建一个Widget可在整个应用程序中用于WebView从任何地方启动的自定义。 先决条件 要完成本教程,您需要: 下载并安装Flutter。 下载并安装Android Studio 或 Visual Studio Code。 建议为您的代码编辑器安装插件: Flutter和Dart为 Android Studio 安装的插件。 Flutter 为 Visual Studio Code 安装的扩展。 本教程通过 Flutter v1.22.2、Android SDK v30.0.2、Android Studio v4.1 验证。 步骤 1 — 设置项目 为 Flutter 设置环境后,您可以运行以下命令来创建新应用程序: flutter create flutter_webview_example 导航到新的项目目录: cd flutter_webview_example 使用flutter create将生成一个演示应用程序,该应用程序将显示单击按钮的次数。 pubspec.yaml在您的代码编辑器中打开并添加以下插件: pubspec.yaml dependencies: flutter: sdk: flutter webview_flutter: ..
介绍 Firewalld 是一个可用于许多 Linux 发行版的防火墙管理解决方案,它充当 Linux 内核提供的 iptables 包过滤系统的前端。在本指南中,我们将介绍如何为您的服务器设置防火墙,并向您展示使用firewall-cmd管理工具管理防火墙的基础知识(如果您更愿意使用iptablesCentOS,请遵循本指南)。 注意:您可能正在使用比撰写本文时可用的更新版本的 firewalld,或者您的服务器设置与本指南中使用的示例服务器略有不同。本指南中解释的某些命令的行为可能因您的特定配置而异。 Firewalld 的基本概念 在我们开始讨论如何实际使用该firewall-cmd实用程序来管理您的防火墙配置之前,我们应该熟悉该工具引入的一些基本概念。 区域 该firewalld守护程序管理使用实体被称为“区”的规则组。区域基本上是一组规则,根据您在计算机连接到的网络中的信任级别来决定应该允许哪些流量。网络接口被分配了一个区域来规定防火墙应该允许的行为。 对于可能经常在网络之间移动的计算机(如笔记本电脑),这种灵活性提供了一种根据环境更改规则的好方法。在公共 WiFi 网络上运行时,您可能制定了严格的规则来禁止大部分流量,同时在连接到家庭网络时允许更宽松的限制。对于服务器来说,这些区域并不是那么重要,因为网络环境很少发生变化(如果有的话)。 无论您的网络环境多么动态,熟悉每个预定义区域背后的一般思想仍然很有用firewalld。按照从最不信任到最受信任的顺序,其中的预定义区域firewalld是: drop:最低级别的信任。所有传入连接都被丢弃而没有回复,只有传出连接是可能的。 block : 与上面类似,但不是简单地丢弃连接,传入的请求会被一个icmp-host-prohibitedoricmp6-adm-prohibited消息拒绝。 public:代表公共的、不受信任的网络。您不信任其他计算机,但可能会根据具体情况允许选定的传入连接。 external:在您使用防火墙作为网关的情况下的外部网络。它配置为 NAT 伪装,以便您的内部网络保持私密但可访问。 internal:外部区域的另一侧,用于网关的内部部分。这些计算机相当值得信赖,并且可以使用一些附加服务。 dmz:用于位于 DMZ 中的计算机(无法访问网络其余部分的隔离计算机)。只允许某些传入连接。 work:用于工作机器。信任网络中的大多数计算机。可能会允许更多的服务。 home:家庭环境。这通常意味着您信任大多数其他计算机,并且将接受更多服务。 信任:信任网络中的所有机器。最开放的可用选项,应谨慎使用。 要使用防火墙,我们可以创建规则并更改区域的属性,然后将我们的网络接口分配给最合适的区域。 规则永久性 在 firewalld 中,规则可以被指定为永久的或即时的。如果添加或修改规则,默认情况下会修改当前运行的防火墙的行为。在下次启动时,修改将被丢弃并应用旧规则。 大多数firewall-cmd操作都可以使用该–permanent标志来指示应将非临时防火墙作为目标。这将影响在启动时重新加载的规则集。这种分离意味着您可以在活动防火墙实例中测试规则,然后在出现问题时重新加载。您还可以使用该–permanent标志随着时间的推移构建一整套规则,这些规则将在发出重新加载命令时立即应用。 安装并启用您的防火墙以在启动时启动 firewalld 在某些 Linux 发行版上默认安装,包括 CentOS 7 的许多映像。 但是,您可能需要自己安装 firewalld: sudo yum install firewalld ..
作为Write for DOnations计划的一部分,作者选择了免费和开源基金来接受捐赠。 介绍 随着开发人员工具迁移到云端,云 IDE(集成开发环境)平台的创建和采用正在增长。云 IDE 允许开发团队之间实时协作,在统一的开发环境中工作,最大限度地减少不兼容性并提高生产力。可以通过 Web 浏览器访问,各种类型的现代设备都可以使用云 IDE。 code-server是在远程服务器上运行的Microsoft Visual Studio Code,可直接从浏览器访问。Visual Studio Code 是一个现代代码编辑器,具有集成的 Git 支持、代码调试器、智能自动完成以及可自定义和可扩展的功能。这意味着您可以使用运行不同操作系统的各种设备,并始终拥有一致的开发环境。 在本教程中,您将在 Ubuntu 20.04 机器上设置代码服务器云 IDE 平台并将其公开在您的域中,并使用免费的Let’s Encrypt TLS 证书进行保护。最后,您将在您的 Ubuntu 20.04 服务器上运行 Microsoft Visual Studio Code,在您的域中可用并受密码保护。 先决条件 一台运行 Ubuntu 20.04 的服务器,具有至少 2GB RAM、root 访问权限和一个 sudo、非 root 帐户。您可以按照此初始服务器设置指南进行设置。 您的服务器上安装了 Nginx。有关如何执行此操作的指南,请完成如何在 Ubuntu 20.04 上安装 Nginx 的步骤 1 ..
该系列的一部分: 如何使用 HTML 构建网站 本教程系列将指导您使用 HTML(用于在 Web 浏览器中显示文档的标准标记语言)创建和进一步自定义该网站。不需要有任何编码经验,但如果您想重新创建演示网站,我们建议您从本系列的开头开始。 在本系列结束时,您应该有一个准备好部署到云的网站,并且基本熟悉 HTML。了解如何编写 HTML 将为学习其他前端 Web 开发技能(例如 CSS 和 JavaScript)奠定坚实的基础。 网站页脚是网页底部的最后一块内容。页脚可以包含任何类型的 HTML 内容,包括文本、图像和链接。在本系列的最后一个教程中,我们将使用<footer>元素为我们的网页创建以下基本页脚: 首先,在结束</div>标记之后和结束标记之前粘贴以下代码片段</body>: . . . <!–Footer–> <footer style=”height:auto; background-color:#F7C201;”> <h1><Made with 🤍 at DigitalOcean</h1> </footer> . . . 在这个片段中,<!–Footer–>是一个不会被浏览器读取的注释,用于帮助组织我们的html文件,以提高人类可读性。在这个注释下面,我们 添加了一个<footer>元素,指定了它的背景颜色,并使用了 style 属性设置了它的高度以自动调整到里面的内容。一个<footer>元素是一种语义的,它的名字告诉开发者的内容的目的元素。这对开发人员以及使用屏幕阅读器的网站访问者都有帮助。否则,<footer>元素就像一个<div>元素一样工作。 我们还在<h1>元素中添加了文本内容和表情符号。随意使用您选择的消息和表情符号更改此文本内容。 保存您的文件并在浏览器中重新加载它以检查结果。你应该会收到这样的信息: 请注意,我们的页脚内容与演示站点中的内容不太一样。我们的页脚内容有一个白色的底部边距,文本有不同的样式。要删除底部边距并设置文本样式,请将突出显示的属性添加到您的<h1>元素中,如下所示: <h1 style=”color:white; padding:40px; margin:0; text-align:center;”>Made with 🤍 at DigitalOcean</h1> 保存文件并在浏览器中重新加载它。您现在应该有一个与本教程顶部所示的演示站点样式相同的页脚。 在本教程中,您学习了如何创建页脚并为其设置样式。您现在可以探索使用本教程系列中的元素向页脚添加不同类型的内容�..
作者选择了COVID-19 救济基金来接受捐赠,作为Write for DOnations计划的一部分。 介绍 Elasticsearch是一个实时分布式搜索和分析数据的平台。它的流行是由于其易用性、强大的功能和可扩展性。 Elasticsearch 支持 RESTful 操作。这意味着您可以将 HTTP 方法(GET、POST、PUT、DELETE等)与 HTTP URI (/collection/entry) 结合使用来操作您的数据。直观的 RESTful 方法对开发人员和用户都很友好,这也是 Elasticsearch 受欢迎的原因之一。 Elasticsearch 是免费的开源软件,背后有一家可靠的公司——Elastic。这种组合使其适用于许多用例,从个人测试到企业集成。 本文将向您介绍 Elasticsearch,并向您展示如何安装、配置和开始使用它。 先决条件 要遵循本教程,您将需要以下内容: 一台运行 CentOS 8 的服务器,具有至少 1GB 的内存和非 root sudo 用户。有关详细说明,请查看我们的 CentOS 8 初始服务器设置指南 wget安装在您的服务器上 步骤 1 — 在 CentOS 8 上安装 Java Elasticsearch 是用 Java 编程语言编写的。那么,您的第一项任务是在您的服务器上安装 Java 运行时环境 (JRE)。您将为 JRE ..
介绍 提高 Web 应用程序加载性能的最重要因素之一是它的包大小。像webpack这样的现代模块打包器执行 tree-shaking 以消除死代码。 然而,在较大的应用程序中,tree-shaking 可能无法正确处理一些不正当的导入,这些会增加包大小。或者某些模块可能无法正确延迟加载,并且还会增加主包的膨胀。 在本文中,您将了解两种用于分析应用程序包大小的工具:webpack-bundle-analyzer和source-map-explorer. 先决条件 如果你想跟随这篇文章,你需要: Node.js 安装在本地,您可以按照如何安装 Node.js 和创建本地开发环境来完成。 本教程还将假设您已@angular/cli全局安装 本教程已通过 Node v16.2.0、npmv7.18.1、@angular/cliv12.0.5、@angular/corev12.0.5、webpack-bundle-analyzerv4.4.2 和source-map-explorerv2.5.2 验证。 使用 webpack-bundle-analyzer webpack-bundle-analyzer 是一个分析 webpack stats JSON 文件的工具,Angular CLI 可以在构建应用程序时自动生成该文件。 首先,您需要webpack-bundle-analyzer作为开发依赖项安装在您的项目中: npm install [email protected] –save-dev 然后,使用 Angular CLI 构建用于生产的应用程序并指定 ,–stats-json以便将 webpack 统计数据导出到该dist文件夹: ng build –configuration=production –stats-json 现在,使用以下命令webpack-bundle-analyzer针对stats.json文件运行本地npx: npx webpack-bundle-analyzer dist/*/stats.json 这将在端口 8888 上启动本地服务器,其中包含生产应用程序包的交互式FoamTree 地图。 ..
作为Write for DOnations计划的一部分,作者选择了免费和开源基金来接受捐赠。 介绍 通常,在 Internet 上托管软件应用程序需要对整体系统进行基础设施管理、规划和监控。与这种传统方法不同,无服务器架构(也称为功能即服务或 FaaS)将您的应用程序分解为功能。这些功能是无状态的、自包含的、事件触发的、功能完整的实体,它们通过您管理的 API 进行通信,而不是底层硬件和显式基础设施配置。与普通应用程序相比,功能设计可扩展、可移植、设置更快且更易于测试。为了让无服务器架构在原则上工作,它需要一种与平台无关的打包和编排功能的方式。 OpenFaaS是一个开源框架,用于在 Kubernetes 上实现无服务器架构,使用 Docker 容器来存储和运行功能。它允许将任何程序打包为容器并通过命令行或集成的 Web UI 作为函数进行管理。OpenFaaS 对指标有很好的支持,并在需求增加时为功能提供自动缩放。 在本教程中,您将把 OpenFaaS 部署到您域中的 DigitalOcean Kubernetes 集群,并使用免费的 Let’s Encrypt TLS 证书保护它。您还将使用官方命令行工具faas-cli探索其 Web UI 并部署现有功能和新功能。最后,您将拥有一个灵活的系统来部署无服务器功能。 先决条件 一个 DigitalOcean Kubernetes 集群,您的连接配置为kubectl默认设置。集群必须至少有 8GB RAM 和 4 个 CPU 内核可用于 OpenFaaS(如果使用量更大,则需要更多)。创建集群时,有关如何配置的说明kubectl显示在“连接到集群”步骤下。要在 DigitalOcean 上创建 Kubernetes 集群,请参阅Kubernetes 快速入门。 Docker 安装在您的本地机器上。按照您的发行版的第 1 步和第 2 ..