Google SearchConsole Errors - Soft 404

Google SearchConsole is giving me some errors.

Submitted URL seem to be a Soft 404.
Most of these seem to be a weblink to an external web page. Is this normal behavior for Google or is there something I should change on the site so Google doesn’t care about them?

So Google’s definition of a soft 404 is a page that indicates the page was not found yet still returns a success code (e.g. 200).

Have you got a specific error page set using the error_page system/context setting?

I do have the error_page setting pointing to my specificly created 404 page which contains a Wayfinder list of all pages.

I had a similar thing happening on a site with custom requests.

This site used a single resource to load user profile data via a plugin. So I was doing custom checking to see if that profile existed or was published. If it wasn’t able to be displayed, then I was accidently using a $modx->sendRedirect() with the default response code. So visitors were being correctly redirected to the 404 page but receiving a 200 response code.
This was fixed by either adding the correct response code to the call or just using $modx->sendErrorPage() which adds the 404 response code automatically.

Are you using any kind of custom requests or doing any manual redirects somewhere on this site?

I don’t think there are any custom requests that could result in a redirect.

What do you mean by manual redirects?

Yeah sorry that wasn’t incredibly clear :sweat_smile:. I just meant perhaps you had a snippet on that resource that used $modx->sendRedirect() or similar.

I don’t think there are any $modx->sendRedirect() calls. The URLs that Google is listing are the standard MODx weblink resource types with a couple different links to external sites.

Beyond that it’s hard to know what might be causing it…

You said some of them are weblinks which by their nature redirect to another page.
Are the ones being flagged using a resource id or a full URL?

The entire site uses friendly URLs, if that is what you are asking. So Google is reporting a full URL for each weblink page, and also each page is pointing to a full URL on the external websites.

  • In the Settings tab of your Weblink-Resources there is a field called “Response Code”. The default value is “HTTP/1.1 301 Moved Permanently”. Have you changed that to something else?
  • Are those external links still valid links or are they broken?
  • When you open the ‘Network’ tab of the developer tools in the browser and view one of these Weblink-resources, do you see the 301 redirect?

The response code is still the default and the external links are still valid.

But I think with your last point we might be narrowing things down. There are half a dozen weblinks on the site but only three were singled out by Google. Based on the network tab in Chrome developer tools, I think the issue is coming from a subdomain redirect which only exists for these three weblinks.

We setup some subdomains as a shortcut to the external sites. These MODx weblinks are directed to the subdomains which in turn are also forwarding to the external site. I’m not sure how that creates a soft 404 for Google, but it seems like it has to be related.