2009-04-27 8 views
1

Dans un environnement de test, j'ai auto-signé un cert et l'ai installé sur un site Web dans IIS 6. Il utilise .NET 2.0. Cert semble bien (moins le fait que les services clients ne lui font pas entièrement confiance comme on pourrait s'y attendre). Je peux faire tout ce que je veux en frappant le site localement à partir du serveur sur HTTPS ou HTTP.C# et IIS - connexions de suppression SSL, fine sur HTTP

Le problème vient lorsque vous accédez à ce site à distance. Si la page contient une exception, la connexion supprime. Ne pas retourner une erreur, mais juste à fond, où le navigateur dit qu'il n'a pas pu trouver le site (c'est après qu'il se résout pendant quelques secondes, où je peux voir le trafic TCP de l'IP client entrant).

L'aspect intéressant est que je peux créer une page ASPX vide, sans rien, et c'est bien sur HTTPS. Mais la minute je mets jeter une nouvelle exception(); sur la page, ça remonte à tomber. En passant, il semble que cela fonctionne tout à fait normal si je frappe la même page en utilisant HTTP à la place.

Donc, je suis un peu coincé. Quelqu'un a-t-il vu quelque chose comme ça? Mon premier penchant est d'aller après les règles de proxy/pare-feu entre mon ordinateur client distant et le serveur, mais je veux m'assurer que ce n'est pas quelque chose que je pourrais réparer avant que je bloque les autres équipes.

EDIT ... semble être un problème de liste blanche de pare-feu. D'autres sur mon sous-réseau ont le même problème, mais les gens dans d'autres endroits peuvent le frapper très bien.

+0

Quelle version d'IIS utilisez-vous? –

+0

Il fonctionne à partir de IIS 6. – Chris

Répondre

2

Il ne s'agit pas d'un problème de proxy ou de pare-feu, car l'écran jaune de la mort n'est que du texte qui transmet très bien via n'importe quel pare-feu. Voici quelques choses que j'essaierais d'abord.

  1. Assurez-vous que le fait que vous utilisez HTTPS n'est pas la cause du problème, comme le problème ne provient pas dans votre programme, en manipulant le protocole HTTPS. Comme une manipulation spéciale du code d'erreur.

  2. Créer un nouveau certificat et voir si les mêmes problèmes se produisent. Essayez de reproduire ce problème sur une autre machine, il pourrait s'agir d'un problème de configuration.

  3. Essayez d'obtenir un vrai certificat de GoDaddy, ils sont seulement 29.99.

C'est tout ce que je peux trouver maintenant. Une chose que vous n'avez pas mentionnée était quelle version d'IIS vous utilisiez, ce qui sera utile.

+0

Bon appel, le frapper à partir d'une autre machine semble être OK. Je me demande si ce sont des certs locaux avec lesquels j'ai singé quand j'ai appris comment les utiliser. – Chris

1

Avez-vous levé l'exception, puis testé la page à l'aide de HTTP standard? Est-ce que la même chose se passe, ou est-ce que cela arrive seulement si vous lancez une exception et y accédez en utilisant HTTPS?

Questions connexes