Pendant des années, j’utilise le fichier .htaccess suivant pour que PHP puisse s’exécuter en HTML sur Apache chez GoDaddy:
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
Il y a quelques jours, seul l'un des nombreux sites Web de GoDaddy utilisant ce fichier .htaccess a commencé à afficher l'Internal Server Error 500.
J'ai ensuite supprimé ces deux lignes ci-dessus du fichier .htaccess et les ai remplacées par:
AddType application/x-httpd-php5 .php5 .php4 .php .php3 .php2 .phtml .htm .html
Tout est ensuite revenu à la normale.
Qu'est-ce qui causerait ce problème? Pourquoi ai-je dû effectuer ce changement pour que le site Web redevienne normal? Quel paramètre peut avoir été modifié par GoDaddy? Ou y a-t-il un paramètre dans cPanel, le client peut avoir changé pour créer ce problème?
Cela ressemble à un changement dans la manière dont PHP est exécuté sur le serveur. Soit parce que l'hôte a mis à jour/migré le serveur, soit à cause d'un changement de configuration de l'utilisateur. Certains hôtes permettent à l'utilisateur de changer la version de PHP en cours d'exécution via une option dans cPanel.
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
Cela indique que PHP est en cours de traitement à l'aide du protocole FastCGI (mod_fcgid).
AddType application/x-httpd-php5 .php5 .php4 .php .php3 .php2 .phtml .htm .html
Cela me suggère que PHP pourrait maintenant être exécuté en tant que module Apache. Bien que ce ne soit pas une donnée, j'ai vu cela suggéré pour les deux configurations. Cependant, il s'agit du paramètre de configuration que je dois utiliser sur mon serveur de développement, qui exécute PHP en tant que module Apache.
Exécutez phpinfo()
sur le ou les serveurs pour vérifier/comparer la version PHP et l'API du serveur utilisés.