2009-11-08 4 views
13

Récemment mon FAI a basculé notre site Web vers un cluster haute disponibilité IIS7.0. Le site fonctionne sur PHP5.2.1 et je ne peux que télécharger des fichiers (donc pas de réglages de registre). J'avais testé le site avant et tout semblait fonctionner, mais maintenant la page de paiement échoue avec:Débogage d'une erreur interne du serveur 500 sur PHP s'exécutant sur le cluster IIS7

500 - Erreur interne du serveur. Il y a un problème avec la ressource que vous recherchez, et il ne peut pas être affiché. Comme les messages d'erreur vont, ce n'est pas très instructif.

J'ai essayé:

ini_set('display_errors', 1); 
ini_set('error_log', $file_php_can_write_to); 

mais les deux ne semblent pas faire quoi que ce soit.

Quelqu'un sait comment obtenir une meilleure sortie de débogage?

Répondre

30

Modifier: On dirait que nous avons un similar question in serverfault. Check it out

La désactivation des erreurs personnalisées IIS7 permet d'envoyer les réponses aux erreurs de votre application aux clients distants sans être censurée par le module d'erreurs personnalisées de l'IIS7. Vous pouvez le faire à partir de l'outil d'administration IIS7 en exécutant "Démarrer> Exécuter> inetmgr.exe", en sélectionnant votre site Web/application/répertoire virtuel dans l'arborescence de gauche, en cliquant sur l'icône "Pages d'erreur", en cliquant sur « Modifier les paramètres de fonction » l'action, puis en sélectionnant « Erreurs détaillées »

Source

+0

Actuellement, j'utilise Firefox. –

+0

Cela change les choses mais maintenant je reçois un texte brut: "La page ne peut pas être affichée parce qu'une erreur interne du serveur s'est produite." –

+2

+1 Je n'utilise que l'asp classique, et je suis tombé dessus ... la même réponse marche pour moi. –

-4

IIS fait cela, il est vraiment ennuyeux et je ne pouvais pas trouver une solution, qui est ce qui m'a amené à passer à un serveur Apache pour ma machine locale. Malheureusement, si vous n'avez pas de contrôle sur votre serveur, le mieux que vous puissiez faire est soit de le tester localement sur une configuration apache, soit de demander à votre hôte d'autoriser les messages d'erreur.

J'ai fait un peu de googling, this cela ressemble à ce dont vous avez besoin. J'aurais aimé que ce soit là quand j'essayais de faire fonctionner IIS.

+0

Personnellement, je préférerais Apache moi-même, mais ce n'est pas aussi utile qu'une réponse pourrait l'être. – icedwater

+1

Suggérer un serveur Web alternatif n'est pas très utile. Que faire si le PO n'a pas ce genre de contrôle? – Clarkey

1

Il est très courant lorsque vous changez de serveur, vous ne pouvez pas charger vos applications. J'ai résolu ce problème en cours d'exécution php.exe au lieu de charger vos applications sur le navigateur:

1) l'exécuter en utilisant la ligne de commande > C:\php\php.exe OU

2) Exécutez Windows Explorer, chercher, et double cliquez sur c:\php\php.exe.

3) Vous allez voir ce que les DLL ont des conflits et causer l'erreur 500. 4) Résolvez les conflits en trouvant les bonnes DLL pour votre version de Windows et vous devriez être capable de voir vos applications via le navigateur.

Le meilleur des canards.

Questions connexes