2012-12-18 137 views
1

我不能使用IIS7爲asp網絡運行visual studio 2012 debug。visual studio 2012 debug for asp.net not working using IIS7

我已經嘗試以下

ASP NET在IIS中設置

.NET編譯:更改的默認語言爲C#

IIS設置

ASP:

  • 更改腳本語言爲C#(手動)
  • 啓用客戶端調試:真
  • 啓用服務器端調試:真

腳本 - 語言:C#

而且我使用Asp Net v4.0應用程序池

是否有任何其他設置可以更改以嘗試使其工作?

編輯:

我的用戶是Debbuger用戶

的一部分的錯誤是:

無法啓動debbuging在Web服務器上。 Web服務器配置不正確。查看常見配置錯誤的幫助。

編輯2:

這是日誌

Software: Microsoft Internet Information Services 7.5 
Version: 1.0 
Date: 2012-12-18 11:29:55 
Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken 
2012-12-18 11:29:55 ::1 DEBUG /tgpwebged/debugattach.aspx - 443 - ::1 - 403 7 5 43 

EDIT 3:

我已經手動配置web.config中的編譯元素。這是實際配置:

<compilation batch="true" debug="true" defaultLanguage="C#" explicit="false" 
maxBatchGeneratedFileSize="10000" maxBatchSize="10000" 
numRecompilesBeforeAppRestart="100" strict="false" 
tempDirectory="C:\Windows\Temp" urlLinePragmas="false"> </compilation> 

此外,僅用於測試目的已更改用戶ASP NET V4應用程序池運行到我的帳戶下。不是系統..我的個人帳戶。沒有成功。

+0

實際問題是什麼? – ChrisBint

+0

只需編輯我的帖子。 –

+0

嘗試重建解決方案。有時候會發生在我身上,重建會修復它。 – hmqcnoesy

回答

0

你可以將你的調試器附加到w3wp進程並進行調試嗎?

這裏是一個文章:Attatch debugger to an IIS process

+0

只需添加日誌。可能會有幫助。我會嘗試 –

+0

我無法附加。無法附加到進程。MSVSMON.EXE未能啓動。 –

+1

您嘗試附加在管理權限下? – Likurg

0

嘗試運行在命令行中執行以下操作:

cd %windir%\Microsoft.NET\Framework\v4.0.30319 
aspnet_regiis.exe -i 
+1

我已經執行了該操作,Asp net 4已經安裝 –

1

我以前曾經有過這個問題(雖然不是VS2012)和下面的事情已經工作:

  • 確保IIS配置爲集成Windows身份驗證。
  • 確保HTTP Keep Alives已啓用。
  • 確保http://localhost在您的網站瀏覽器的信任的站點。
+0

它是一個https連接,但我會嘗試這些選項 –

+0

以上所有步驟是它的方式應該是,但仍然不能去工作。 Google Chrome無法添加託管網站。儘管客戶端提供了有效的客戶端證書,並且系統在運行時使用debbug模式接受該證書。 –

0

通常,您必須運行Visual Studio作爲本地管理員才能進行調試工作。

0

我在VS2010上運行一個類似的東西,在IIS7.5上託管一個站點。我試圖打F5並讓我的網站啓動一個自動附加調試器。

我認爲關鍵是這一行日誌:

2012-12-18 11:29:55 ::1 DEBUG /tgpwebged/debugattach.aspx - 443 - ::1 - 403 7 5 43 

據我所知,debugattach.aspx是某種掛鉤的是VS會嘗試調用它實際上可以啓動和運行前你的應用。細節在interwebs上有點粗略,關於這個東西實際上是什麼,但是看起來如果你沒有獲得200(成功)VS將無法自動附加。基本上,它在第1步失敗。在你的日誌中,你有這個請求403(授權錯誤),我的日誌中有404(未找到)。

在你的具體情況,你可能有一些東西在你的IIS配置中阻塞DEBUG謂詞。阻止罕見動詞或除POST和GET以外的任何其他安全措施是常見的安全措施。在我的情況下,它可能類似 - aspx擴展可能被濾除。它也可能是有問題的應用程序的默認身份驗證設置。

更新:我確實解決了這個問題,並且兩個單獨的東西都是錯誤的。首先,我使用UrlScan.dll來確保安全性,並且它阻止了DEBUG謂詞。另外,我使用UrlRewrite規則從HTTP到HTTPS,並且生成的302重定向也阻止了此VS請求。我能夠使用IIS失敗的請求跟蹤功能找到這兩個問題。來自該工具的日誌可以幫助您深入瞭解管道中各種模塊和處理程序正在執行的操作。

希望這有助於!

0

我剛剛有同樣的情況。我已經解決了它,以下是我如何做到的:

  • 檢查它是否是IIS上正確的.NET Framework版本。
  • 檢查您的應用程序池的管道模式,對於某些應用程序 - 它只允許Classic mode
  • 檢查您要調試的應用程序下是否有其他應用程序。
+0

使用列表標記使帖子更具可讀性。 – meilke