Um problema comum em servidores que rodam PHP com suPHP ativado é erro 500 devido a falta de permissão de arquivos ou diretório, isso geralmente acontece quando um arquivo é copiado de uma conta para outra, os passo a seguir devem ser feitos somente para aqueles que tem acesso root, se sua é de hospedagem ou revenda, nosso suporte pode cuidar disso.
Esse erro na verdade é mais como uma proteção, protegendo as contas do servidor de rodar scripts feitos por outras contas, assim, se um hacker invadir a conte de um usuário, as contas estão protegidas contra os scripts na conta invidada, as demais contas no máximo que pode acontecer é o erro 500.
Para identificar o problema, basta acessar o cPanel >> log de erros e verificaqr se existe algo do tipo SoftException in Application.cpp:422: Mismatch between target UID (1111) and UID (2222) of file “/home/xxxx/public_html/xxxx.php”
* Note que 1111 e 2222 são o UID do usuário, a conta tem um e o arquivo outro, por isso ocorre o erro 500. xxxx e xxxx.php são o diretório e o arquivo que esta sendo executado.
Para solucionar conecte ao seu servidor via SSH e execute o comando a seguir:
chown -R xxxx:xxxx /home/xxxx
* Altere xxxx pelo usuário, geralmente no cPanel o usuário é o mesmo caminho do diretório, vamos fazer de conta que o usuário é “sitesem”, o comando seria
chown -R sitesem:sitesem /home/sitesem
O comando chown altera o usuário e/ou a propriedade de grupo de cada arquivo fornecido conforme especificado pelo primeiro argumento sem opção como segue: se somente um nome de usuário (ou número de identificação do usuário) é fornecido, aquele usuário torna-se o proprietário do arquivo fornecido, e o grupo de arquivos não é alterado. Se um nome de usuário é seguido de dois pontos e um nome de grupo (ou número de identificação de grupo), sem espaços entre eles, a propriedade de grupo do arquivo é alterada também.