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. 算法导论 第八章 线性时间排序(python)

    比较排序:各元素的次序依赖于它们之间的比较{插入排序O(n**2) 归并排序O(nlgn) 堆排序O(nlgn)快速排序O(n**2)平均O(nlgn)} 本章主要介绍几个线性时间排序:(运算排序非比 ...

  2. Linux 下Python2.7解决list打印中文字符问题

    在写一个爬取智联招聘数据的爬虫中,将所需内容匹配到后打印出现了utf-8字符,并没有出现中文字符. 例如: >>>listnine = ['梨', '橘子', '苹果', '香蕉'] ...

  3. HDU 2462 The Luckiest number

    The Luckiest number Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on HDU. Ori ...

  4. Leetcode 273.整数转换英文表示

    整数转换英文表示 将非负整数转换为其对应的英文表示.可以保证给定输入小于 231 - 1 . 示例 1: 输入: 123 输出: "One Hundred Twenty Three" ...

  5. SSH常见问题集锦

    /WEB-INF/web.xml Web应用程序配置文件,描述了 servlet 和其他的应用组件配置及命名规则. /WEB-INF/classes/包含了站点所有用的 class 文件,包括 ser ...

  6. 基于神经网络的embeddding来构建推荐系统

    在之前的博客中,我主要介绍了embedding用于处理类别特征的应用,其实,在学术界和工业界上,embedding的应用还有很多,比如在推荐系统中的应用.本篇博客就介绍了如何利用embedding来构 ...

  7. Session保存用户名到Session域对象中

    Session保存用户名 1.构造登录界面 用户名: 密   码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 <!DOCTYPE html> < ...

  8. NOI导刊2010提高(06) 黑匣子

    题目描述 Black Box是一种原始的数据库.它可以储存一个整数数组,还有一个特别的变量i.最开始的时候Black Box是空的.而i等于0.这个Black Box要处理一串命令. 命令只有两种: ...

  9. 10.1——pair,map,set,multimap,multiset

    map和set只允许相同的键出现一次,而multimap和multiset则允许出现多次. 1. 引言——pair类型: pair需要添加头文件utility头文件 make_pair<v1,v ...

  10. 混合APP开发框架资料汇总

    Ionic(ionicframework)一款接近原生的Html5移动App开发框架 会html css js就可以开发app,Ionic基于angualrjs框架是一个专注于开发移动wap以及app ...