https://www.howtogeek.com/233383/why-was-80-chosen-as-the-default-http-port-and-443-as-the-default-https-port/

The Question

SuperUser reader Samuel Alexander wants to know why 80 and 443 were chosen as the default HTTP and HTTPS ports:

Why was port 80 chosen as the default HTTP port and 443 as the default HTTPS port? Is there any particular reason or was it just defined that way?

Why were 80 and 443 chosen as the default HTTP and HTTPS ports?

The Answer

SuperUser contributor jcbermu has the answer for us:

The Internet Assigned Numbers Authority (IANA) is a department of ICANN, a non-profit private corporation that oversees global IP address allocation, the Domain Name System (DNS), well-known ports, and other Internet Protocol-related symbols and numbers.

During March of 1990, they published a document (RFC 1060) where they listed all the well-known ports at that time. In that list there was no protocol assigned to port 80 (it jumped from 79 to 81):

At that time, port 80 was officially free. In 1991, Tim Berners-Lee issued the first version of HTTP in a document (HTTP 0.9) where he stated:

Then in July of 1992, RFC1060 was made obsolete by a new document (RFC 1340) where the following appeared:

That document made 80 the official port for HTTP (www). However there is nothing about port 443 in that document. During October of 1994, RFC 1700 was published and this appeared for the first time:

It seems it was solicited by Kipp E.B. Hickman, who at the time worked at Mosaic, the first GUI browser company that later went on to become Netscape. It is not clear why port 443 was chosen. However, the previous RFC document had a gap from 374 through 512, but in RFC1700 the space from 375 to 451 was filled. It is most likely that the numbers were simply given in order of request.


Have something to add to the explanation? Sound off in the comments. Want to read more answers from other tech-savvy Stack Exchange users? Check out the full discussion thread here.

The Question

SuperUser reader Samuel Alexander wants to know why 80 and 443 were chosen as the default HTTP and HTTPS ports:

Why was port 80 chosen as the default HTTP port and 443 as the default HTTPS port? Is there any particular reason or was it just defined that way?

Why were 80 and 443 chosen as the default HTTP and HTTPS ports?

The Answer

SuperUser contributor jcbermu has the answer for us:

The Internet Assigned Numbers Authority (IANA) is a department of ICANN, a non-profit private corporation that oversees global IP address allocation, the Domain Name System (DNS), well-known ports, and other Internet Protocol-related symbols and numbers.

During March of 1990, they published a document (RFC 1060) where they listed all the well-known ports at that time. In that list there was no protocol assigned to port 80 (it jumped from 79 to 81):

At that time, port 80 was officially free. In 1991, Tim Berners-Lee issued the first version of HTTP in a document (HTTP 0.9) where he stated:

Then in July of 1992, RFC1060 was made obsolete by a new document (RFC 1340) where the following appeared:

That document made 80 the official port for HTTP (www). However there is nothing about port 443 in that document. During October of 1994, RFC 1700 was published and this appeared for the first time:

It seems it was solicited by Kipp E.B. Hickman, who at the time worked at Mosaic, the first GUI browser company that later went on to become Netscape. It is not clear why port 443 was chosen. However, the previous RFC document had a gap from 374 through 512, but in RFC1700 the space from 375 to 451 was filled. It is most likely that the numbers were simply given in order of request.


Have something to add to the explanation? Sound off in the comments. Want to read more answers from other tech-savvy Stack Exchange users? Check out the full discussion thread here.

Why was 80 Chosen as the Default HTTP Port and 443 as the Default HTTPS Port?的更多相关文章

  1. Root-NFS: Unable to get mountd port number from server, using default

    问题描述: 以前下载到开发板linux内核启动好好地,今天突然启动不了了,到达Root-NFS: Unable to get mountd port number from server, using ...

  2. Nginx Server 上80,443端口。http,https共存

    server{ listen 80; listen 443 ssl; server_name www.iamle.com; index index.html index.htm index.php; ...

  3. mod_cluster启用https协议的步骤

    1.生成SSL证书与私钥 Generate Private Key on the Server Running Apache + mod_ssl First, generate a private k ...

  4. 前端开发必须说的那些事之——同源策略(same origin policy)

    同源策略指的是三个相同 协议相同 域名相同 端口相同 如https://www.baidu.com/hahah.html这个网址来说 https是使用的协议,www.baidu.com是域名,端口号默 ...

  5. Ingress介绍与安装配置

    在 Kubernetes 集群中,Ingress是授权入站连接到达集群服务的规则集合,为您提供七层负载均衡能力.您可以给 Ingress 配置提供外部可访问的 URL.负载均衡.SSL.基于名称的虚拟 ...

  6. 服务器 apache配置https,http强制跳转https(搭建http与https共存)

    公司linux服务器上的nginx的已经改成https了,现在还剩下一个windows云服务器没配置. 环境 windows wampserver2.5 64位 1.腾讯云申请的ssl 包含三个文件: ...

  7. docker部署Asp.Net Core、Nginx、MySQL

    2019/10/24,docker19.03.4, .netcore 3.0,CentOS7.6 摘要:asp.net core 3.0 网站项目容器化部署,使用docker-compose编排Ngi ...

  8. 搭建Istio基础环境

    需求 搭建istio基础环境(基于1.5.1版本) 安装步骤 在安装 Istio 之前,需要一个运行着 Kubernetes 的环境,安装步骤可以参考前面的文章 下载istio,然后解压,然后将 is ...

  9. istio in kubernetes (二) -- 部署篇

    在 Kubernetes 部署 Istio [demo演示] 可参考官方文档(https://istio.io/latest/zh/docs/setup/install/) ,以部署1.7.4版本作为 ...

随机推荐

  1. 【POJ 1061】青蛙的约会(EXGCD)

    Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事 ...

  2. String字符串的遍历

    StringTest.java /* * 变量字符串(获取字符串中的每一个字符) */ public class StringTest { public static void main(String ...

  3. FTS5与DIY

    此文已由作者王荣涛授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. FTS5简介 前文已经介绍了FTS3/FTS4,本文着重介绍它们的继任者FTS5. FTS5是在SQLite ...

  4. python002 Python3 基础语法

    python002 Python3 基础语法 编码默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -* ...

  5. CLR Via CSharp读书笔记(26) - 计算限制的异步操作

    执行上下文: 执行上下文包括安全设置(压缩栈.Thread的Principal属性和Windows身份),宿主设置(System.Threading.HostExecutionContextManag ...

  6. SPOJ LCS2 多个串的最长公共子串

    这里串最多有10个,找所有串的最长公共子串 这里后缀自动机做,以第一个串建立后缀自动机,后面的串一个个去匹配,每次得到当前串在可到达状态上所能得到的最长后缀长度 拿所有串匹配后得到的结果进行计算 #i ...

  7. 转载:shell脚本之前的基础知识

    转载地址:http://www.92csz.com/study/linux/12.htm 第十二章 学习 shell脚本之前的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果 ...

  8. X230 安装 EI Capitan 10.11.5 驱动篇

    /* 键盘又换回了 美蓓亚键盘 缩写nmb    虽然比群光软 但是手感真的出色,貌似x宝没有这个代工厂的键盘(全新,非拆机,而且是标准us阵列,背光版) 有人肯定会问,博主这么纠结键盘干嘛?     ...

  9. 匿名函数--lambda函数

    匿名函数 匿名函数:为了解决一些功能很简单的需求而设计的一句话函数 (python对匿名函数支持有限,只有一些简单的条件下可以用匿名函数) 匿名函数固定格式: func = lambda *args: ...

  10. Servlet的Service方法和doget 和 dopost方法的区别,常见的错误解析

    package com.sxt.in; import java.io.IOException; import javax.servlet.ServletException; import javax. ...