簡體   English   中英

IIS和ASP.Net Web開發服務器之間的行為差​​異?

[英]Differences in behaviour between IIS and the ASP.Net Web Development Server?

在開發過程中,我通常使用Web Development Server(有時稱為Cassini)測試ASP.Net應用程序。 有時,當我發布到真正的IIS環境時,我注意到應用程序的行為有所不同。

那么,生產IIS服務器和ASP.Net Web開發服務器的行為方式有何不同? 我並不是說功能集的差異(顯然IIS有許多WDS中沒有的功能),但它們處理ASP.Net的方式不同。

順便說一句:對這個問題的回答中提到了一些差異,但我確信必須有更多。

我在這里和其他地方采取的一些事情:

  • 各個服務器運行ASP.NET應用程序的安全上下文是不同的。 對於Dev Server,這是當前用戶的帳戶。 對於IIS,這是特殊用戶(ASPNET或NETWORK SERVICES)的上下文,通常具有有限的權限。

  • 對於Web站點,Development Server使靜態文件(圖像和樣式表等)受到ASP.NET授權。 但是,IIS提供靜態文件而不使用授權規則。

  • 開發服務器不支持SMTP,因此您無法直接從此服務器發送電子郵件。

  • 開發服務器不支持HTTPS。

  • 兩個服務器處理包含“//”的路徑的方式不同。 據報道,Dev服務器更加寬容。

  • Dev服務器隨機選擇端口而不是標准HTTP端口80。

一些差異可能是:

  • 使用cassini時無法使用虛擬目錄。 由於缺少文件夾權限,這可能會在第一次部署時導致意外行為。 (例如,您在本地計算機上有/ image /目錄,但在IIS / image /中是指向其他的虛擬目錄)
  • 某些第三方程序集(如ComponenArt Web DLL)會導致特定端口問題出現問題。 最好使用IIS進行開發,以最大限度地減少部署時的兼容性問題。
  • 目標IIS的trustlevel可能低於您的開發設置,這可能會導致出現故障,具體取決於您使用IIS執行的操作,例如讀取Uptime。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM