The resource has been permanently removed and will not be available again.
The target resource is no longer available at the server and no forwarding address is known. This is an intentional, permanent removal. Unlike a 404 Not Found, a 410 explicitly tells clients and search engines that the resource is gone forever and should be de-indexed.
A 410 Gone is returned when a resource has been deliberately and permanently removed from the server. The server is confirming that it knows about the URL but has intentionally made it unavailable, with no intention of restoring it.
Common scenarios include discontinued products, expired promotions, deleted user accounts, removed blog posts due to legal or content policy reasons, and deprecated API endpoints. It's a stronger signal than 404 because it communicates intent.
Platform-Specific Notes:
Nginx Return 410 with: location /old-page { return 410; } in your server block.
Apache Use Redirect 410 /old-page or RewriteRule ^old-page$ - [G] in .htaccess. The [G] flag returns 410 Gone.
Cloudflare Configure 410 responses using Page Rules or Cloudflare Workers for specific URL patterns.
Node.js Return with res.status(410).json({ error: 'Gone', message: 'This resource has been permanently removed' }).
# Request for a permanently removed page GET /products/discontinued-widget HTTP/1.1 Host: example.com Accept: text/html # Server Response HTTP/1.1 410 Gone Content-Type: text/html; charset=UTF-8 Cache-Control: public, max-age=86400 <!DOCTYPE html> <html> <body> <h1>This page has been permanently removed</h1> <p>The product you're looking for is no longer available.</p> </body> </html>
Find 410 pages still being linked to, broken redirects, and orphaned URLs across your entire website.
Start Free Scan