2010-03-09 30 views
2

我的工作,我從誰已經在幾個月前離開公司程序員繼承了ASP.Net Web窗體應用程序。遮住URL在ASP.Net Web表單

的應用程序部署在我們的內部網絡服務器和用戶通過URL去應用:

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

當我檢查IIS服務器,應用程序的文件夾設置爲僅

\的Inetpub \ wwwroot的\ TestApp \應用1 \

,並從該文件夾,你可以看到login.aspx的文件。

我想問問以前的程序員調整了什麼樣的IIS設置,以便URL被模糊了,其中名爲(12345abcde)的假想文件夾(?)已被插入。我需要在IIS中檢查哪些設置?

另一個問題是,在login.aspx文件中,可以找到以下代碼:Codebehind =「Login.aspx.vb」,但同一文件Login.aspx.vb不在應用程序的目錄中。雖然我確實看到有一個dll文件所在的bin文件夾。是否有可能將vb代碼隱藏文件編譯到該DLL中?

順便說一句,如果有一個可用的dll觀衆,我可以下載,請張貼同樣的,這樣我可以檢查在web表單應用程序的DLL。

欣賞您的輸入。謝謝。

回答

6

這來自於ASP.NET使用cookieless sessions

基本上,而不是存儲在cookie中的會話ID,它是作爲URL,這使得可使用即使當cookie是在瀏覽器中禁用該應用的一部分進行傳遞。

要啓用/禁用此功能,請使用以下的web.config條目:

<sessionState cookieless="true" /> 

關於你提到的第二個問題:當您在Visual Studio中使用「發佈網站」功能,所有代碼-behind文件被編譯到的DLL(bin文件夾),並且ASPX文件被改變以包括對相應的DLL的引用(在<@Page >指令)。


而關於 「DLL查看器」:看看.NET Reflector

+0

感謝您的支持。現在給我一個好主意。代碼隱藏如何?它是否能夠駐留在編譯的DLL事件中,儘管它位於bin文件夾中? – Angelo 2010-03-09 16:24:25

+0

@Angelo:文件後面的代碼被編譯成放在bin文件夾中的程序集(DLL)。當應用程序運行時,.Net加載bin文件夾中的所有程序集以解析頁面代碼。 – NotMe 2010-03-09 16:37:40