2010-10-07 45 views
1

Je travaille sur une application Web ASP.net. Je reçois des erreurs sur certaines de mes pages où je reçois des erreurs JavaScript d'exécution.Webresource.axd ne se charge pas sur mon application asp.net fonctionnant sur ma batterie de serveurs Web

J'ai réduit le problème à un seul contrôle du menu ASP sur la page maître. J'ai créé une page blanche avec juste le contrôle du menu ASP. Le contrôle du menu ASP est lié à Web.sitemap. La page donne par intermittence des erreurs d'exécution. Toutefois, si j'actualise la page, l'erreur peut apparaître ou ne pas apparaître sur un chargement de page donné. Parfois, cela fonctionne; Parfois, le navigateur émet des erreurs d'exécution lors du chargement de la page ou lorsque je souris sur le contrôle du menu ASP.

Lorsque j'attrape l'erreur dans Visual Studio, le message "erreur d'exécution microsoft jscript 'sys" est indéfini ". Quand je Google pour ce message, je trouve qu'il est généralement associé à AJAX. Cependant, la seule chose sur la page est un seul contrôle ASP.

Il n'y a absolument pas de Javascript sur la page à l'exception de ce qui est généré par le framework .net.

Qu'est-ce qui pourrait causer ce problème?

MISE À JOUR J'ai découvert que mon environnement a en fait un équilibrage de charge avec une batterie de trois serveurs Web desservant l'URL. Lorsque j'accède à l'application sur l'un des serveurs individuellement par adresse IP, tout fonctionne correctement.

Pour clarifier, je comprends que lorsqu'un utilisateur rencontre l'URL publique, il se résout à x.x.x.1. x.x.x.1 est l'adresse d'un commutateur qui achemine la requête vers x.x.x.2, x.x.x.3 ou x.x.x.4. Lorsque j'utilise l'URL publique, je trouve que certaines demandes de fichiers axd sont redirigées par intermittence vers Error.aspx! WTF!?!?!?!?!? On me dit que c'est le résultat d'une fonction de sécurité qui vise à me protéger contre les scripts inter-sites et d'autres choses mal assorties. Que puis-je faire?

Mise à jour Après avoir pris quelques pages d'erreur auto-réoriente, je reçois un message d'erreur plus significatif: ASP.NET Ajax client-side framework failed to load.

Répondre

0
+0

À quoi sert cette «touche machine»? Où puis-je le vérifier? –

+0

@Rice voir les liens dans l'édition. Asp.net utilise la clé machine pour crypter les paramètres de webresource.axd, si vous ne le configurez pas explicitement dans l'application web.config, il en génère automatiquement un nouveau pour votre application (à chaque redémarrage d'appdomain). – eglasius