Cela n’est jamais arrivé auparavant. Normalement, une erreur s'afficherait, mais maintenant, cela me donne simplement une erreur interne du serveur 500. Bien sûr, avant, lorsqu’il affichait l’erreur, il s’agissait d’un serveur différent. Maintenant, je suis sur un nouveau serveur (j'ai une racine complète, donc si j'ai besoin de le configurer quelque part dans php.ini, je peux.) Ou peut-être que c'est un truc Apache ?
Je l'ai supporté et j'ai simplement transféré les fichiers sur mon autre serveur et je les ai exécutés là-bas pour trouver les erreurs, mais cela devient trop fastidieux. Existe-t-il un moyen de résoudre ce problème ?
L'utilisation de
php -l
(c'est-à-dire "L") à partir de la ligne de commande génère des erreurs de syntaxe qui peuvent amener PHP à générer une erreur d'état 500. Il affichera ce qui suit :PHP 解析错误:语法错误,第 18 行 中出现意外的“}”
Sauf
php.ini
文件中的error_reporting
、display_errors
和display_startup_errors
设置。它们应分别设置为E_ALL
和"On"
(尽管您不应该在生产服务器上使用display_errors
,因此禁用此选项并使用 log_errors 相反,如果/当你部署它时)。您还可以在脚本的开头更改这些设置(display_startup_errors
) afin qu'ils puissent être définis au moment de l'exécution (même si vous ne détecterez peut-être pas toutes les erreurs de cette façon) :Ensuite, redémarrez le serveur.