Jump to content

- - - - -

Where & How To Fix Google Fetching Non-Existing Pages


This topic has been archived. This means that you cannot reply to this topic.
1 reply to this topic

#1   NodsDorf

  • Members
  • 1,278 posts

Posted 04 May 2012 - 10:53

So I ran into Google Fetching 2 types of pages that shouldn't exist on our site, but appear to actually exist. I have no idea how google actually found them but I need to fix them as they serve no purpose.

The first one (not fixed) they are trying crawl is products that don't exist like...

Which is serving a page, but not its the product_info.php product not found error. Shouldn't this be directed to 404 ?

The other one I think I fixed was the products_reviews.php page. We don't use them and removed all out buttons and links to them but somehow Google still found them and was dinging us for duplicate title tags.

Since I was running URL re-writer
# Begin Ultimate SEO V2.2d
Options +FollowSymLinks
RewriteEngine On

  # RewriteBase instructions
  # Change RewriteBase dependent on how your shop is accessed as below.
  # http://www.mysite.com = RewriteBase /
  # http://www.mysite.com/catalog/ = RewriteBase /catalog/  
  # http://www.mysite.com/catalog/shop/ = RewriteBase /catalog/shop/

  # Change the following line using the instructions above  
RewriteBase /catalog/

RewriteRule ^(.*)-p-(.*).html$ product_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-c-(.*).html$ index.php?cPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-m-(.*).html$ index.php?manufacturers_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pi-(.*).html$ popup_image.php?pID=$2&%{QUERY_STRING}
RewriteRule ^(.*)-by-(.*).html$ all-products.php?fl=$2&%{QUERY_STRING}
RewriteRule ^(.*)-t-(.*).html$ articles.php?tPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-a-(.*).html$ article_info.php?articles_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-au-(.*).html$ articles.php?authors_id=$2&%{QUERY_STRING}
#RewriteRule ^(.*)-pr-(.*).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pri-(.*).html$ product_reviews_info.php?products_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-f-(.*).html$ faqdesk_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fc-(.*).html$ faqdesk_index.php?faqPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fri-(.*).html$ faqdesk_reviews_info.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-fra-(.*).html$ faqdesk_reviews_article.php?faqdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-i-(.*).html$ information.php?info_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-links-(.*).html$ links.php?lPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-pm-([0-9]+).html$ info_pages.php?pages_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-n-(.*).html$ newsdesk_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nc-(.*).html$ newsdesk_index.php?newsPath=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nri-(.*).html$ newsdesk_reviews_info.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-nra-(.*).html$ newsdesk_reviews_article.php?newsdesk_id=$2&%{QUERY_STRING}
RewriteRule ^(.*)-po-([0-9]+).html$ pollbooth.php?pollid=$2&%{QUERY_STRING}
# End Ultimate SEO V2.2d
I just commented out the following line..
#RewriteRule ^(.*)-pr-(.*).html$ product_reviews.php?products_id=$2&%{QUERY_STRING}
Then added
ErrorDocument 404 /catalog/404.php

Which I just made by cloning the shipping.php page and naming it 404.php adding filename define and language info 404 page. That seemed to work now all product_reviews.php are sent to 404.php page.

But I can use some help fixing the pages being served for products that don't exist. Right now Google is seeing them as Soft 404, is there a way to send them all to our 404.php page?

Any help is appreciated.

Thank you

#2   NodsDorf

  • Members
  • 1,278 posts

Posted 04 May 2012 - 18:19

To simplify this question.

What would be the best way to force none existing products like found at catalog/productsname-p-2892.html to 404.php ?

Please see my .htaccess in the original post's blathering.