2010-03-09 8 views
2

Je travaille sur une application de formulaires Web ASP.Net dont j'ai hérité d'un programmeur qui a déjà quitté l'entreprise il y a quelques mois.URL masquée dans les formulaires Web ASP.Net

L'application est déployée dans nos serveurs intranet et l'utilisateur va l'application via l'url:

http://TestApp/App1/(12345abcde)/login.aspx

Lorsque j'ai vérifié le serveur IIS, le dossier de l'application est uniquement définie sur

\ inetpub \ wwwroot \ TestApp \ App1 \

et à partir de ce dossier, vous pouviez voir le fichier login.aspx.

Je voudrais savoir quels paramètres IIS le programmeur précédent a tordus de sorte que l'URL est un peu obscurci, où le dossier imaginaire (?) Nommé (12345abcde) a été inséré. Quels paramètres dois-je vérifier dans l'IIS pour cela?

Une autre question est que dans le fichier login.aspx, les éléments suivants peuvent être trouvés: Codebehind = "Login.aspx.vb", mais le même fichier Login.aspx.vb n'est pas dans le répertoire de l'application. Bien que j'ai vu qu'il existe un dossier bin où réside un fichier dll. Est-il possible que le code vb derrière le fichier est compilé dans cette DLL? A propos, s'il y a une visionneuse dll disponible que je pourrais télécharger, veuillez poster la même chose afin que je puisse inspecter la DLL dans l'application webforms.

Appréciez vos entrées. Merci.

Répondre

6

Cela provient de l'utilisation de cookieless sessions dans ASP.NET. Fondamentalement, au lieu de stocker l'identifiant de session dans un cookie, il est transmis dans le cadre de l'URL, ce qui rend l'application utilisable même lorsque les cookies sont désactivés dans un navigateur.

Pour activer/désactiver cette fonction, utilisez l'entrée web.config suivante:

<sessionState cookieless="true" /> 

En ce qui concerne votre deuxième question: lorsque vous utilisez la fonction "publier un site web" dans Visual Studio, tout le code Les fichiers -behind sont compilés en DLL (dans le dossier bin) et le fichier ASPX est modifié pour inclure une référence à la DLL correspondante (dans la directive <@Page >).


Et en ce qui concerne le "spectateur dll": un coup d'oeil à .NET Reflector.

+0

Merci pour votre inscription. Ça me donne une bonne idée maintenant. Que diriez-vous du code-behind? Serait-il capable de résider dans la DLL compilée alors qu'il se trouve dans le dossier bin? – Angelo

+0

@Angelo: Les codes derrière les fichiers sont compilés dans des assemblys (DLL) qui sont placés dans le dossier bin. Lorsque l'application s'exécute, .Net charge tous les assemblys dans le dossier bin pour résoudre le code de la page. – NotMe

Questions connexes