有一個客戶的問題困擾着我。IIS 6.0在URL中的頁面名稱之後用斜槓做什麼?
他們使用IIS 6.0,出於某種原因,而不是在他們的服務器上發出一個頁面的正常請求,我會打電話給www.domain.com/Default.aspx某人鍵入www.domain.com/Default。 aspx/randomstuff
IIS的響應似乎是正常服務於Default.aspx,但就瀏覽器而言,路徑是www.domain.com/Default.aspx/而不是www.domain。 com /因此所有相對路徑CSS,圖像等失敗
我看着小提琴手的交通,似乎所有這些圖像等請求,如www.domain.com/Default.aspx /images/image.gif也是返回Default.aspx的內容,不需要t o說,不是一個有效的圖像!
我不相信他們正在做任何特殊的URL重寫,但只是可以肯定的,我嘗試了一個新創建的ASP.NET Web應用程序的實驗,結果是一樣的。
那麼是什麼導致IIS將/Default.aspx/randomstuff這樣的URL作爲Default.aspx的請求傳遞給ASP.NET管道?它可以被阻止,並且只是按照你所期望的那樣拋出一個404?
另請參閱MSDN文章底部的IIS中有關「檢查該文件是否存在」的評論。 –
似乎最好的重載是'HttpException(404,「not found」)'。另外,在我的場景中,最好'Response.StatusCode = 404; Response.End();'而不是拋出'HttpException'。 –