Have you ever tried to visit a site link and see ” internal server error” or 500 error? For web owners, this can be frustrating as you tend to lose traffic when users try to visit and get this error, they tend to bounce off and this sends bad signal to search engines like Google.
What is internal server error?
This is a HTTP 500 error which is known as Internal Server Error. This is a server error response code to show that your server experienced an unexpected situation that hindered it from carrying out a particular request. Most times, the server was not able to be specific on the exact problem.
Some errors are termed as client side errors but 5xx errors are server side. Once you get any error code with 5xx, just know you are experiencing server error codes. See below for some server error codes.
List of 5xx errors
- 500 – Internal Server Error
- 501 – Not Implemented
- 502 – Bad Gateway
- 503 – Service Unavailable
- 504 – Gateway timeout
- 505 – HTTP Version Not Supported
- 506 – Variant Also Negotiates
- 507 – Insufficient Storage
- 508 – Loop Detected
- 510 – Not Extended
- 511 – Network Authentication Required
Impact of 5xx errors on SEO
Note that when you have errors on your site and it is causing your users issues, it is recorded as a bad user experience which translate to your site not fulfilling Google online goal: to provide quality user experience to online users.
Hence, when search engine like Google gets 5xx error on any site, it can lower a page’s ranking or even drop it from the index and as such hinders or harms your SEO.
Note: When the server has Microsoft Internet Information Services (Microsoft IIS) installed, the error code will be specified in detail. This detail was gotten from Ionos.
- 500.0: Module or ISAPI error occurred.
- 500.11: Application is shutting down on the web server.
- 500.12: Application is busy restarting on the web server.
- 500.13: Web server is too busy.
- 500.15: Direct requests for global.asax are not allowed.
- 500.19: Configuration data is invalid.
- 500.21: Module not recognized.
- 500.22: An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
- 500.23: An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode.
- 500.24: An ASP.NET impersonation configuration does not apply in Managed Pipeline mode.
- 500.50: A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred.
- 500.51: A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred.
- 500.52: A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred.
- 500.53: A rewrite error occurred during RQ_RELEASE_REQUEST_STATE notification handling. An outbound rule execution error occurred. The rule is configured to be executed before the output user cache gets updated.
- 500.100: Internal ASP error
Read Also: Causes and Fixes to Error 406
What causes 500 error?
There are a few things that can cause this error and they can be as follows in details. We usually have this problem before now but things we did then to resolve it are what i wish to share with you.
- Timeout in PHP: This is when a script is trying to access an external resource but experiences a timeout
- .htaccess issue: IF there is a wrong file in the structure of a .htaccess
- File Permission error: When there is an error in the main files and folders permission
- PHP memory limit: This is when a process exceeds the memory and as such cannot be executed correctly
- It is important you check for Error in syntax or code in CGI/Perl scripts
What happens if you built/designed your website with a content management system like WordPress? The problem can be due to installation of faulty or extensions that are not compatible with your PHP version or others. It can be plugins or Themes from some untrusted Third Party providers.
How to fix HTTP 500 Internal Server Error?
It is good practice for webmasters to do a check always on their website/blog just to see what is happening as a visitor. This way you can interact with your website and feel what you think users can feel. This way, you may know when the site is having such error as 5xx errors.
The bad side of any error on your website is that it affects your ranking on search engine result pages. So this post will provide you with the basic knowledge you will need to solve this problem before contacting your web hosting company. Some hosting service provider can be slow to answer or solve your problem. But when all fails, you can contact your hosting provider.
1 Solving Timeout in PHP
Increase Timeout Value: First from your cpanel, look at the log files. If you do not know how to see this:
- Login to your Cpanel
- Navigate to Metrics > Errors. Here you will see all your error log displayed in the box
The log files shows on instant what the issue is.
When the server times out, it may be due to web server unable to complete the request from a client in response from a remote server. Most cases of limited resources due to PHP timeout or memory overload.
You can fix this 500 error caused by timeout by increasing timeout values or setting other appropriate timeout options so that the remote server will not return a timeout error but wait for the request to be processed completed. The memory limit is how much memory a process can use.
Another possible solution is to increase the memory limit to a higher value say 512 MB
This can be done from the PHP.INI or PHP wizard
2 Proper configuration in .htaccess file
A small syntax error can cause an internal server error because the server will not be able to communicate when a user request is done. You can check if the ,htaccess file is responsible for the error by temporarily renaming it and reload the website. If you no longer receive the error message, it means you can either repair the file or create a new one.
You can write the file in a text editor such as Notepad, Notepad++, or Sublime Text, but not with a word processing program such as Microsoft Word.
3 Set File Permission
You need to understand that if you set the correct file permission, you wont get 500errors. First know the types of rights available in server
- Read (r)
- Write (w)
- Execute (x)
These permissions can be assigned for three different user types:
- Owner of the file
- Group of users
- All others
This issue can be fixed by resetting the correct permission on the file or directory
How to solve HTTP 500 error as an internet user?
This part of the post is to educate users on how to deal with this display when they notice it. But note there is a little you can do from your end. You have to understand that this is a server side error and not a client side error so your laptop/pc/phone or your network connection settings is good and have no problem.
Hence, your best solution as an internet user is to usually reload (refresh) the page again later. Also, most times the webmaster may have corrected the error and you still seeing it. Simply refresh it so as to update your cache.
Clear your web cache and then refresh the web page again as this has been known to sort issues related to web browsers not able to communicate with certain sites servers.
Most times after fixing this issue as a webmaster, try to clear or purge all cache from the backend, it can easily be done if you are a WordPress user with the aid of plugins like w3 total cache, rocket and others. This is to make it easy for the browsers to serve fresh content of your web and remove cache on the browser side of the user.
Where all these processes do not work. It is best to contact your hosting provider. They will offer the lasting solution but it will interest you that they will do most of these things i have enumerated above in this post. As the issues are the same and sometimes you may not have access to the tools but they have full access to everything about your website cpanel and as such they offer last result.
Trust this post has been helpful, kindly share with us in the comment section. Please share on your social media and stay blessed