我希望我曾经有过的服务器介绍

2025-06-07

我希望我曾经有过的服务器介绍

当我第一次学习编码时,我不知道服务器是什么、服务器是什么样子的,或者我最终会如何使用它。

在本指南中,我将尽力提供我期望的入门介绍,希望您最终能够更好地理解服务器的真正含义以及如何使用服务器。无论您使用的是 Mac、Linux 还是 Windows 10 系统,这些说明都适用。

那么,什么是服务器?

你可能读过各种关于服务器的技术解释,但我喜欢把它描述成一台始终连接到互联网的计算机。这是因为它通常执行需要互联网连接的任务,例如提供构成网站的文件。本文将探讨的就是这种场景。

当有人使用其网络浏览器请求网站时,会向特定服务器发出请求以获取组成该网站的文件,并且该服务器始终连接到互联网并随时准备提供这些文件。

向服务器发出请求

除了

  • 它始终连接到互联网
  • 始终开启
  • 它已配置为“监听”请求并提供正确的文件

如果您确实愿意,您自己的计算机也可以成为服务器。

实际上,当我们需要服务器时,我们倾向于租用一台或其中的一部分,这些服务器与许多其他服务器一起存储在一个大仓库中。

服务器机架

服务器没有屏幕,因为人们不需要通过图形用户界面与它们交互。所以你通常会看到大量的服务器被高效地集中存放在机架中。

那么如何获取服务器并进行配置呢?

如果您需要一台服务器,现在您倾向于去Amazon Web ServicesGoogle Cloud PlatformDigital Ocean等提供商并为自己“配置”一台服务器。

我们就这么做吧!

大多数平台都为新用户提供免费套餐,或为低使用率客户提供丰厚的补贴。

AWS 允许新用户使用小型服务器一年,但即使您不是第一年,我们现在也可以创建一个服务器并在很短的时间内使用它,而且只需花费几美分。

 注册 AWS

如果您之前没有注册过 AWS,请立即创建账户!您需要一张有效的信用卡/借记卡才能注册,但我们不会收取任何费用。

预配实例

AWS 将服务器称为“实例”,因为从技术上讲,您并没有获得自己的服务器,而是租用了云中的“计算空间”,换句话说,虚拟服务器只是单个硬件上的一小块空间。

但实际上,它感觉就像你自己的服务器一样。而且比自己买一台服务器便宜得多。

首先,找到名为EC2的服务
选择 EC2 服务

然后,选择启动实例的选项:

启动实例

您可以选择多种类型的实例,但免费套餐中只有部分可用。请选择Amazon Linux 2 AMI类型,该实例运行的是 Amazon Linux 操作系统的最新版本。大多数服务器都运行某个版本的 Linux 操作系统。

选择 Amazon Linux 2 AMI

在下一页上,确保仍然选择了正确的 AMI 类型,然后按“审核并启动”:

审核和发布

当系统询问您是否使用现有密钥对或创建新的密钥对时,请创建一个新的密钥对并下载

下载新的密钥文件

然后,您的实例将需要一些时间进行配置,配置完成后,您将能够转到 EC2 仪表板并查看正在运行的实例列表,除非您之前已经运行了其他实例,否则其中可能只有 1 个实例。

连接到您的实例

我们提到过,实例没有屏幕,那么如何操作它们呢?我们可以从命令行远程访问和操作它们,方法是使用名为 的命令连接到它们ssh。SSH(安全外壳)是一种用于通过网络远程安全地连接和操作计算机的协议。

当我们使用 SSH 连接到实例时,我们需要证明我们确实拥有控制实例的权限。这一点至关重要,否则任何人都可能连接到我们的服务器并造成破坏,尤其是在服务器通常执行关键业务的敏感任务(例如处理用户数据或付款信息)的情况下。

创建实例时,您将下载一个私钥。此密钥与 AWS 存储的公钥匹配。只有私钥的所有者才能连接到该实例。这称为公钥身份验证,是与远程服务器进行身份验证的标准方法。

首先,也许可以将这个密钥文件从“下载”目录中移到某个地方,以便将来您知道在哪里可以找到它(如果您再次使用它的话)。

然后,我们需要更改文件的权限以使其更安全:

chmod 400 my-first-key-pair.pem

这意味着只有文件的所有者才能读取它。

最后,转到 AWS EC2 仪表板并找到实例的公共 IP:

查找公共 IP

然后,使用 IP 构建以下命令,确保您提供的是刚刚修改的 .pem 证书文件的正确路径,并将 IP 地址“34.244.187.6”替换为您的实例的 IP 地址:

ssh -i my-first-key-pair.pem ec2-user@34.244.187.6

当询问您是否要继续时,输入“yes”并按回车键。

您现在已连接到您的 EC2 实例!

如果您使用的是 Linux 机器并且尚未ssh启用该命令,则可能需要先运行以下命令来启用它:

sudo apt update

sudo apt install openssh-server

现在这个命令应该可以工作了:

ssh -i my-first-key-pair.pem ec2-user@34.244.187.6

看看周围!创建一些文件!

您的终端现在就像连接到 EC2 实例的终端一样运行。如果您ls发现pwd它不再是您的计算机,请随意创建一些文件,探索文件系统。

由于它是一个全新的实例,因此您的主目录中没有文件,但如果您移动到根目录,您将看到大量标准 Linux 文件cd /

让我们的实例服务于网站

如果我们想配置这个实例来为网站提供服务,我们需要做几件事:

  1. 允许 HTTP 连接,因为浏览器使用 HTTP 协议请求网站,而目前我们的实例仅允许 SSH 连接
  2. 配置一些服务器软件,通过提供文件来响应 HTTP 请求
  3. 创建这些文件(或以某种方式将它们放到机器上)

让我们做这三件事......

1. 允许 Web 流量进入您的实例

为了允许 Web 流量,我们需要配置实例的“安全组”设置。点击 EC2 仪表板上“安全组”标题旁边的“启动向导”链接。

查找安全组设置

在“安全组”页面上,确保您的安全组突出显示,然后选择“入站”选项卡,然后按“编辑”

编辑入站流量规则

添加新的 HTTP 规则并保留提供的默认设置。这将允许来自任何 IP 地址的 HTTP 流量进入实例:

添加新规则

保存此新规则。

2.安装Apache

回到已与实例建立 SSH 会话的终端,运行以下命令安装名为 Apache 的软件。Apache 是一个简单的服务器软件,其默认配置允许它在实例在端口 80 上收到 HTTP 请求(即来自浏览器或其他 Web 客户端的请求)时为单个网站提供静态文件。

我们可以使用yum包管理器来安装httpd,奇怪的是,这是 Apache 的包名称。

sudo yum install -y httpd

3.创建一些文件

默认情况下,Apache 将提供在目录中创建的文件/var/www/html/

cd进入该目录并创建一个index.html文件:

cd /var/www/html

sudo touch index.html

要编辑此文件,我们必须使用命令行编辑器(例如 Vim),因为我们没有图形用户界面,因此没有 VSCode 等!

sudo vi index.html

如果您以前没有使用过 Vim,则需要使用 键i进入插入模式,使用 Esc 键进入命令模式来切换插入/命令模式。

进入插入模式后,创建 HTML 文件,完成后,切换到命令模式并键入:wq以保存并退出。

创建 HTML 文件

最后一步:启动服务器

我们必须通过运行以下命令启动 Apache 服务器软件:

sudo service httpd start

访问网站

最后,我们应该能够在浏览器中访问我们实例的公共 IP 地址,并且网站应该可以提供服务!

访问我们的网站

服务器的配置方式有很多种,服务器可以做的远不止服务于静态 Web 应用程序 - 大多数时候,它们运行一个在提供静态文件的同时执行某些逻辑的应用程序,而且通常它们根本不用于服务 Web 应用程序。

但是,我希望这只是对服务器配置的一种方式的有用见解。

断开与实例的连接

要结束 SSH 会话,请ctrl + D在终端中按下组合键。现在您应该已经回到自己的电脑上了。

终止您的实例

为了避免收费,请不要忘记在完成后终止您的实例!

终止您的实例

您可以在 AWS 的 EC2 仪表板上执行此操作。终止会彻底销毁该实例;如果您以后想恢复,可以“停止”该实例,并在将来重新启动。已停止的实例不会产生费用。

文章来源:https://dev.to/harri_etty/the-introduction-to-servers-i-wish-id-had-44jl
PREV
Front_END Web 开发人员路线图
NEXT
让你的应用感觉更好:给初级/中级开发人员的 10 个 UI 技巧