I too face this type of problem when migrated the site. At that time I have faced such error due to wrong file permission level.
File Permission issue
Check file permission of the file, it must as follows below permission level. If they are not as follow then you can change the file permission.
- public_html -750
- Folders - 755
- .php .html & other script file - 644
To changing the file permission in the bulk, you should use FTP client like FileZilla. Because mass changing via cPanel takes much time.
.htaccess file issue
In most cases corrupted .htaccess or miswritten script may be the reason behind internal server error. For evaluating the performance of the current .htaccess file, first backup or copy .htaccess file data in a safe place. Now replace .htaccess file content with following script
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
Remember that some other essential scripts added in .htaccess file by plugins, mostly by security and cache related plugins are necessary. So, be sure to read them one by one for the proper functioning of your WordPress site.
Additionally, you can try to replace the current WordPress core file with newly downloaded ZIP for the official WordPress site. Again, take care to backup of directory public_html before going further. Most importantly take backup of the wp-config.php file. Replacing also one the useful solution if the above solution did not work.
Hope it will helpful to you. If you have another solution then please mention it.