Ask HN: Is Lobste.rs Down?

October 16, 2025

Encountering a blank or white page when attempting to access a website can be perplexing. Is the server down? Is it a network issue? Or something else entirely? A simple yet powerful diagnostic technique involves inspecting the HTTP headers, which can reveal crucial insights into the site's status.

Diagnosing the Empty Page Phenomenon

When a website presents a white page, it doesn't necessarily mean the server is completely offline. Often, the web server or load balancer is still running and responding to requests. The critical piece of information lies within the HTTP response headers.

Tools like curl -i [website_url] are invaluable for this. When executed, curl -i will display the HTTP headers before the actual content (if any). A common observation during such outages is an HTTP/2 200 OK status code combined with a content-length: 0 header.

For example, a response might look like this:

< HTTP/2 200 < accept-ranges: bytes < alt-svc: h3=":443"; ma=2592000 < content-security-policy: default-src 'none'; img-src 'self' data:; style-src 'self' 'unsafe-inline' < content-type: text/html; charset=utf-8 < last-modified: Wed, 08 Oct 2025 04:02:13 GMT < strict-transport-security: max-age=31536000 < vary: Accept-Encoding < content-length: 0

What Does HTTP/2 200 OK with content-length: 0 Mean?

This specific combination provides a clear diagnostic signal:

  • HTTP/2 200 OK: This status code indicates that the web server (or a proxy/load balancer in front of it) successfully processed the request. It means network connectivity to the server is established, and the server software itself is running and capable of responding to requests.
  • content-length: 0: This header explicitly states that the server is sending an empty response body. While it's sending an OK status, it's not delivering any actual content (like HTML, images, or scripts).

Together, these tell us that the problem is likely not with the network path to the server or the core web server software (like Nginx or Apache). Instead, it points to an issue further up the stack, such as:

  • Application Server Failure: The backend application (e.g., Ruby on Rails, Node.js, Python Flask app) that the web server relies on might have crashed, be misconfigured, or be otherwise unable to generate content.
  • Database Connectivity Issues: The application might be unable to connect to its database, preventing it from rendering any dynamic content.
  • Misconfiguration: A configuration error could be instructing the web server to return an empty response under certain conditions.

Practical Takeaway

The next time you encounter a blank page, don't just assume the site is completely offline. Use curl -i to quickly check the HTTP headers. If you see a 200 OK with content-length: 0, you've narrowed down the problem significantly, indicating that the core server infrastructure is operational but the application serving the content is experiencing issues.

Get the most insightful discussions and trending stories delivered to your inbox, every Wednesday.