The 500 error is an error generated by the server when it encounters an error condition that can not resolve automatically. That is, if a file is not found, the error is 404 (Not found), if you can not lists a directory, the error 403 will be launched (Forbidden). For errors that do not have an explicit definition, will raise the error 500 (Internal error).
This error usually occurs in Apache:
-
when used in the .htaccess file some unsupported directives.
-
in some hostings where by security constraints limit the execution of PHP scripts, for example, only if the write permissions are restricted to the propietary user (chmod 0644).
That is, when a 500 error, we must try to disable directives located in the .htaccess files and check the permissions of your PHP scripts.