How to Fix, Not Found 404 Page will not be Index ?
SEO Help and Tips
Not Found 404 Page will not be Index Fix
To prevent a 404-error page from being indexed by search engines, you can follow these steps:
Set the correct HTTP status code: When a page is not found, it should return a 404 HTTP status code. Ensure that your server is configured to send a proper 404 status code when a page is not found.
Customize your 404-error page: Create a custom 404 error page that provides a user-friendly message and helps visitors navigate back to your site's relevant content or homepage. This can improve the user experience and reduce bounce rates.
Exclude the 404 page from search engine indexing: You can instruct search engines not to index your 404-error page by adding a meta tag with the no index directive. Place the following meta tag in the <head> section of your 404-error page:
Meta Tag:
<meta name="robots" content="noindex"/>
This meta tag tells search engines not to index the page and prevents it from appearing in search results.
Configure your server's robots.txt file: Add a directive to your site's robots.txt file to disallow search engines from crawling and indexing the 404-error page. Open your robots.txt file and include the following line:
Robots.txt:
Identified: Disallow: /404-error-page.html
Unidentified: Disallow: /*404$
Replace /404-error-page.html with the actual URL path of your 404-error page.
Java code that demonstrates how to set the appropriate HTTP status code, customize the 404-error page, and add the no index directive to the meta tag:
Java:
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class CustomErrorServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// Set the HTTP status code to 404
resp.setStatus(HttpServletResponse.SC_NOT_FOUND);
// Specify the content type of the response
resp.setContentType("text/html");
// Create a custom HTML response for the 404 error page
resp.getWriter().println("<html><head><title>404 Not Found</title></head><body>");
resp.getWriter().println("<h1>404 Not Found</h1>");
resp.getWriter().println("<p>The requested page was not found on this server.</p>");
resp.getWriter().println("</body></html>");
// Add the 'noindex' directive to the meta tag
resp.addHeader("X-Robots-Tag", "noindex");
}
}
Here's an example of JavaScript code that sets the appropriate HTTP status code, customizes the 404-error page, and adds the no index directive to the meta tag dynamically:
Java Script:
// Set the HTTP status code to 404
function set404StatusCode() {
if (window.XMLHttpRequest) {
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "404-error-page.html", false);
xhttp.send();
}
}
// Customize the 404 error page
function customize404Page() {
document.getElementById("error-title").innerHTML = "404 Not Found";
document.getElementById("error-message").innerHTML = "The requested page was not found on this server.";
}
// Add the 'noindex' directive to the meta tag
function addNoIndexDirective() {
var metaTag = document.createElement("meta");
metaTag.name = "robots";
metaTag.content = "noindex";
document.head.appendChild(metaTag);
}
// Invoke the functions to handle the 404 error page
set404StatusCode();
customize404Page();
addNoIndexDirective();
Following these steps, you can ensure that your 404-error page is not indexed by search engines, preventing it from appearing in search results and potentially affecting the overall SEO of your website.
Comments
Post a Comment
Thanks for your Comments.