308 Permanent Redirect is an HTTPS status code indicating that the requested resource has been permanently moved to another location. Similar to 301 Moved Permanently, 308 informs the user of the movement of a given online resource, and unlike the 301 redirect, 308 status code keeps the original method of the request, meaning that, should the original request was a POST request, the redirected request would also be a POST request.
Although a 308 Permanent Redirect is helpful in many scenarios, it can also cause issues on your website. Should this be the case, we share tips on how to fix the 308 error and get your website up and running in no time.
308 Permanent Redirect vs. 301 Moved Permanently
Although both codes look very similar and are classified within the 3xx response code family, there are some differences between them that need to be outlined.
- 301 Moved Permanently, as its name suggests, is a mechanism for a permanent redirection that indicates a given resource has been moved to a different location without the intention of getting it back to the old place. Furthermore, a 301 Redirect gives instructions to search engines to update their indexes accordingly and sends the link juice from the old URL to the new one.
- 308 Redirect, on the other hand, is a mechanism that maintains the request method, which means that the original POST request remains the same from old to new URL.
How to Locate the 308 Error
Before you delve into finding the root cause and working on various solutions, you should understand that, by itself, a 308 Permanent Redirect is not an error by itself. It becomes one after improper configuration or some automatic system “fixes” such as:
- Redirect loops occur as the URL keeps bouncing between different versions.
- Too many hops before the final destination, which is oftentimes the case with 3-4-5 redirects before the browser reaches the 200 OK message.
- Redirecting to the wrong protocol, domain, or path.s
- Broken POST requests, such as forms, checkout,s and API calls that fail.
- Improper SEO plugin setup. This can happen when multiple canonicals imply their “proper” rules over each other.
In such cases, 308 Error becomes an issue that should be fixed because of many reasons – it can slow down your website, it can lead to annoying error messages, and therefore lower the trust among your website visitors and stunt your SEO performance.
To locate an unwanted 308 response code, you can use various approaches, depending on your specific requirements and platform.
One of the most common approaches is to inspect the HTTP response headers your web server returns when requesting a given URL. Should the server respond with a status code 308, it will be included somewhere in the response headers, along with detailed information.
Furthermore, you can use network monitoring tools and the web browser developer tools to inspect the network traffic and identify any unwanted responses that cause issues. In the context of web development tools, the steps are as follows:
- Open your web page that displays the 308 Error message.
- Right-click on the page and select the “Inspect” option from the drop-down menu.
- Navigate to the “Network” tab.
- Refresh the page, so the error is being triggered.
Now you can inspect all HTTP responses and filter out the 308 responses within the response headers.
Also, you can use various monitoring scripts and plugins (should your website be based on WordPress or another type of CMS) to locate the problematic redirection.
How to Fix 308 Permanent Redirect Once it Becomes an Issue
To fix unwanted permanent redirections, follow these steps.
First, carefully check your server setup and configurations to make sure that they align with the HTTP specifications. Check for any wrongly configured redirection rules in the .htaccess file or server settings. Also, make sure that the redirection destination is accessible.
Then check your CMS or web application for any conflicting rules and outdated directives that can prompt the unwanted 308 error message. Don’t forget to regularly update your CMS platform and plugins, so as to ensure optimal performance.
Here’s what to look for:
- HTTP to HTTPS enforcement. Search for multiple HTTPS forcing mechanisms on your system. More precisely, check whether your CDN enforces Always HTTPS, server rules for HTTPS, and app-level (CMS, framework) rules to prevent unwanted SSL redirects.
- WWW and non-WWW differences. Sometimes redirection loops appear when two versions of your website exist simultaneously. Imagine a situation in which the web server forces the WWW version of your website, but WordPress implies the non-WWW version, and installed plugins revert back to the WWW version. Check for such alignments and make sure that only one version is being set on each level.
- Trailing slash conflicts. Check for mismatches between /path/ and /path versions. Similar to the WWW standardization, check whether the server, app, and potential plugins force different standartization politics. As a rule of thumb, standardize your content in this manner – directories end with /, while files do not.
Once you locate the cause, you can already take the necessary steps to fix the problem – it may be rooted in misconfigured server settings, misconfigured redirect rules, and SSL certificate issues.
Conclusion
HTTP 308 Permanent Redirect is an HTTP status code that plays an important role when restructuring your website. When set up correctly, the redirection provides a flawless user experience and doesn’t harm SEO. However, when misconfigured, a 308 Permanent Redirect can cause various types of issues on your website. Should you be dealing with an unwanted 308 Permanent Redirect message, the key to resolving it is to check and set up proper web server and website redirecting configuration – always make sure that you have canonical redirect rules on each level, so you avoid dealing with issues and diminished site visitor satisfaction.
