HTTPfy

Port 80 (HTTP)

Plain-text HTTP. Today it is mostly used to redirect visitors to HTTPS and to answer Let's Encrypt HTTP-01 challenges under /.well-known/acme-challenge/.

Well-known (system) port, 0-1023 TCP Web Meant to face the internet

What port 80 is used for

Plain-text HTTP. Today it is mostly used to redirect visitors to HTTPS and to answer Let's Encrypt HTTP-01 challenges under /.well-known/acme-challenge/.

Security: should port 80 be open?

Meant to face the internet. Safe to expose if the server only redirects to HTTPS. Anything served on port 80 can be read and modified in transit, so never accept logins or cookies over it. Add HSTS on the HTTPS site so browsers stop using port 80.

IANA assignment

Service nameProtoDescriptionAssigneeReference
http TCP World Wide Web HTTP
Defined TXT keys: u=<username> p=<password> path=<path to document>
IESG RFC 9110
www TCP World Wide Web HTTP
This is a duplicate of the "http" service and should not be used for discovery purposes.
IESG RFC 9110
www-http TCP World Wide Web HTTP
This is a duplicate of the "http" service and should not be used for discovery purposes. u=<username> p=<password> path=<path to document> (see txtrecords.html#http) Known Subtypes: _printer NOTE: The meaning of this service type, though called just "http", actually denotes something more precise than just "any data transported using HTTP". The DNS-SD service type "http" should only be used to advertise content that: * is served over HTTP, * can be displayed by "typical" web browser client software, and * is intented primarily to be viewed by a human user. Of course, the definition of "typical web browser" is subjective, and may change over time, but for practical purposes the DNS-SD service type "http" can be understood as meaning "human-readable HTML content served over HTTP". In some cases other widely-supported content types may also be appropriate, such as plain text over HTTP, or JPEG image over HTTP. Content types not intented primarily for viewing by a human user, or not widely-supported in web browsing clients, should not be advertised as DNS-SD service type "http", even if they do happen to be transported over HTTP. Such types should be advertised as their own logical service type with their own DNS-SD service type, for example, XUL (XML User Interface Language) transported over HTTP is advertised explicitly as DNS-SD service type "xul-http".
Tim Berners Lee -
http UDP World Wide Web HTTP
Defined TXT keys: u=<username> p=<password> path=<path to document>
IESG RFC 9110
www UDP World Wide Web HTTP
This is a duplicate of the "http" service and should not be used for discovery purposes.
IESG RFC 9110
www-http UDP World Wide Web HTTP
This is a duplicate of the "http" service and should not be used for discovery purposes. u=<username> p=<password> path=<path to document> (see txtrecords.html#http) Known Subtypes: _printer NOTE: The meaning of this service type, though called just "http", actually denotes something more precise than just "any data transported using HTTP". The DNS-SD service type "http" should only be used to advertise content that: * is served over HTTP, * can be displayed by "typical" web browser client software, and * is intented primarily to be viewed by a human user. Of course, the definition of "typical web browser" is subjective, and may change over time, but for practical purposes the DNS-SD service type "http" can be understood as meaning "human-readable HTML content served over HTTP". In some cases other widely-supported content types may also be appropriate, such as plain text over HTTP, or JPEG image over HTTP. Content types not intented primarily for viewing by a human user, or not widely-supported in web browsing clients, should not be advertised as DNS-SD service type "http", even if they do happen to be transported over HTTP. Such types should be advertised as their own logical service type with their own DNS-SD service type, for example, XUL (XML User Interface Language) transported over HTTP is advertised explicitly as DNS-SD service type "xul-http".
Tim Berners Lee -
http SCTP HTTP
Defined TXT keys: u=<username> p=<password> path=<path to document>
Randall Stewart RFC 9260

Registry dates for this port: last modified 2022-02-07.

Check what is listening on port 80

Linux: is anything listening on TCP 80?
sudo ss -tlnp 'sport = :80'
Linux / macOS: which process owns the port
sudo lsof -nP -i :80
Older Linux / BSD (net-tools)
sudo netstat -tlnp | grep ':80 '
Windows (Command Prompt)
netstat -ano | findstr :80
Windows (PowerShell)
Get-NetTCPConnection -LocalPort 80 -State Listen | Select LocalAddress,OwningProcess

Test it from outside

From another machine
nc -vz -w 5 HOST 80
From Windows
Test-NetConnection HOST -Port 80

Open port 80 in the firewall

ufw
sudo ufw allow 80/tcp
iptables
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
nftables
sudo nft add rule inet filter input tcp dport 80 accept
Windows Firewall
New-NetFirewallRule -DisplayName 'Allow TCP 80' -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow

Related ports

All port numbers · Open port checker
Assignment data: IANA port number registry (public domain), retrieved 2026-11-10.