HTTP

HTTP port guide: web traffic on port 80

Understand why port 80 still matters for redirects, certificates, health checks, and legacy clients, even when production traffic should use HTTPS.

Default port
80
Protocol
TCP
Primary use
Legacy or redirected web traffic

What is port 80?

Port 80 is the default TCP port for HTTP. When a browser opens an http:// URL without a custom port, it connects to port 80 and sends plain HTTP requests. Unlike HTTPS on port 443, traffic on port 80 is not encrypted by default.

  • 80 is the default HTTP port

    Browsers, crawlers, load balancers, reverse proxies, and legacy clients all understand port 80 as the standard entry point for plain HTTP.

  • Port 80 should usually lead to HTTPS

    Modern public sites commonly keep 80 open for redirects and automation, while real application sessions happen over encrypted HTTPS on 443.

How HTTP on port 80 works

HTTP is the request and response protocol used by browsers, APIs, webhooks, health checks, and many internal services. On port 80, the client connects over TCP, sends an HTTP request, and receives headers and a response body without a TLS handshake first.

Because traffic is not encrypted, anyone who can observe the network path may see URLs, cookies, headers, form data, and response content unless the application adds its own protection. For public websites and authenticated applications, port 80 should normally redirect to HTTPS instead of serving private content directly.

HTTP port 80 vs HTTPS port 443

Port 80 is plain HTTP. Port 443 is HTTPS, which means HTTP carried inside a TLS-encrypted session. The user experience may look similar in a browser, but the security model is different: HTTPS validates the server certificate and encrypts traffic in transit.

Most production sites use both ports together. Port 80 accepts old links, certificate challenges, and first-time browser requests, then sends a 301 or 308 redirect to the HTTPS URL on 443. After that, HSTS can tell browsers to prefer HTTPS automatically.

When to keep port 80 open

Keep port 80 open when you need HTTP-to-HTTPS redirects, Let's Encrypt HTTP-01 challenges, load balancer health checks, CDN origin checks, simple internal status endpoints, or compatibility with older systems that cannot start directly on HTTPS.

Close or restrict port 80 when the service is private, when all clients are controlled and can use HTTPS directly, or when plain HTTP creates unnecessary exposure. If you do keep it open, keep the behavior narrow and predictable: redirect, challenge, or health check rather than full application access.

Before opening port 80

Before opening TCP 80, confirm that the intended web server, reverse proxy, ingress controller, CDN origin, or load balancer is listening on the correct interface. Decide whether port 80 should serve content, redirect to 443, answer health checks, or respond only to certificate validation paths.

A port checker confirms network reachability, but it does not tell you whether your redirect chain, cache headers, virtual host routing, or certificate automation is correct. Test both the TCP path and the HTTP behavior with a browser, curl, and server logs.

How to open port 80 on Windows, Linux, and macOS

On Windows Server, run IIS, Nginx, Apache, Caddy, or another web server, bind the site to TCP 80, and allow inbound HTTP traffic in Windows Defender Firewall. Cloud servers also need matching cloud firewall or security group rules.

On Linux, configure Nginx, Apache, Caddy, a container port publish, or an ingress controller to listen on 80, then allow TCP 80 in ufw, firewalld, nftables, iptables, or the provider firewall. Containers and Kubernetes services must publish or route the port at the host, load balancer, or ingress layer.

On macOS, port 80 is most often used for local development or lab services. Privileged ports may require elevated permissions, and local firewall or router rules still determine whether other machines can reach the service.

  • Service layer: a web server, reverse proxy, load balancer, container, or ingress controller must listen on TCP 80.
  • Network layer: host firewalls, cloud security groups, router NAT, CDN rules, and load balancers must route traffic correctly.
  • HTTP layer: virtual hosts, redirects, health-check paths, cache headers, and ACME challenge paths should match the intended behavior.
  • Security layer: avoid serving login pages, cookies, API tokens, or private content over plain HTTP.

How to test port 80

Start with an external port check against the public hostname or IP address and port 80. If the result is open, remote clients can establish a TCP connection. Then run curl -I http://example.com to inspect status codes, redirects, server headers, and cache behavior.

On the server, check listeners with ss -tlnp, netstat, lsof, or PowerShell. For reverse proxies and cloud deployments, compare host firewall rules, cloud security groups, load balancer listeners, container port mappings, and application logs because any layer can block or misroute HTTP.

Test port 80 with Port Checker

Common port 80 troubleshooting cases

If port 80 shows closed, the web server may be stopped, listening on localhost only, using a different port, or blocked by the host firewall. If it times out, packets may be dropped by a cloud firewall, router NAT rule, ISP filter, CDN setting, or upstream security policy.

If port 80 is open but the page is wrong, inspect virtual host order, Host header routing, default server blocks, proxy upstreams, container mappings, and DNS records. If redirects loop, compare HTTP and HTTPS virtual hosts and make sure the proxy passes the original scheme correctly.

Security checklist for HTTP

Use port 80 intentionally. Redirect application traffic to HTTPS, avoid credentials and sensitive data on plain HTTP, and keep only the endpoints that need to remain reachable. For public sites, pair the redirect with valid certificates on 443 and HSTS after you confirm HTTPS is stable.

Log requests to port 80, watch for unexpected paths, and remove legacy endpoints that no longer need plain HTTP. If port 80 is only for ACME or health checks, restrict responses to those paths so the service is easier to reason about and monitor.

Frequently asked questions

What is port 80 used for?

Port 80 is the default TCP port for HTTP. It is commonly used for HTTP-to-HTTPS redirects, certificate validation challenges, health checks, and legacy web clients.

Should port 80 be open?

For public websites, it is common to keep port 80 open so old links and first-time browser requests can redirect to HTTPS. For private services, close or restrict it unless there is a clear operational need.

Is HTTP on port 80 secure?

No. Plain HTTP does not encrypt traffic or validate the server with a certificate. Use HTTPS on port 443 for authenticated sessions, forms, cookies, APIs, and private content.

Why is port 80 open but my website still fails?

The TCP port can be reachable while HTTP routing is broken. Check DNS, virtual hosts, redirects, reverse proxy rules, container port mappings, load balancer listeners, and application logs.