【问题标题】:What is the significance of port number in localhost?localhost中的端口号有什么意义?
【发布时间】:2015-06-18 14:44:58
【问题描述】:

不同的网站使用不同的端口,例如 Codecademy 在其 AngularJS 和 Ruby On Rails 教程中使用 localhost:8000。所以,我想知道localhost:8000中这个8000有什么用。在此先感谢:-)

【问题讨论】:

    标签: ruby-on-rails angularjs apache localhost


    【解决方案1】:

    这不是特定于一个框架,它是一个低得多的级别。来自Wikipedia

    在计算机网络中,端口是一种软件结构,用作计算机主机操作系统中的通信端点。端口总是与主机的 IP 地址和通信的协议类型相关联。它完成了通信会话的目的地或起始地址。每个地址和协议的端口由一个 16 位数字标识,通常称为端口号。

    特定的、众所周知的端口号通常用于标识特定的应用程序和服务。在数以千计的枚举端口中,按照惯例保留了 1024 个众所周知的端口号,以标识主机上的特定服务类型。主要使用端口的协议是传输层协议,例如 Internet 协议套件的传输控制协议 (TCP) 和用户数据报协议 (UDP)。

    在应用架构的客户端-服务器模型中,端口用于在网络客户端连接的每个端口号上提供多路复用服务以启动服务,之后在另一个特定连接的端口号上重新建立通信。

    【讨论】:

      【解决方案2】:

      我认为,有一个任务运行程序,如 grunt 或 gulp 通过 BrowserSync(或类似的)为页面提供服务。它们使用与 80 不同的端口,以免干扰本地 Web 服务器(apache、nginx、...)已占用的端口。

      【讨论】:

        【解决方案3】:

        这只是 rails 正在监听的端口。这取决于您如何配置 Rails 服务器,恕我直言,这并不意味着任何有用的东西。有时您必须将服务分配给不同的端口,因为默认端口已被其他服务占用。有时这是出于安全原因,因此来自外界的黑客必须知道您正在使用的端口。但其实并不难知道

        【讨论】:

          【解决方案4】:

          补充一下其他人所说的:所有网络通信都需要一个 IP 地址(可以从 www.google.com 等域名获得)和一个端口号。但是,如果未提供端口号,则 http 服务器使用默认端口:这通常是端口 80。因此,如果您要在没有端口的情况下访问“localhost”,则实际上是在说“localhost:80”。您的计算机可能不知道如何处理它。如果你说“localhost:8000”,并且那里有一个 rails 服务器,那么它将处理请求。

          【讨论】:

            猜你喜欢
            • 2019-08-26
            • 2019-05-26
            • 2020-07-06
            • 2011-11-10
            • 2011-01-12
            • 1970-01-01
            • 2010-10-09
            • 2018-05-30
            • 2019-10-16
            相关资源
            最近更新 更多