[C#] 웹 응용 프로그램 프로젝트 […]가 IIS를 사용하도록 구성되었습니다. 웹 서버 […]를 찾을 수 없습니다.

솔루션 파일에 솔루션을 열 때 “사용할 수없는”웹 프로젝트가 있습니다. 웹 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 프로젝트를 다시로드하면 다음 오류가 발생합니다.


The Web Application Project mycompany.myapp.mywebproject is configured to use IIS. The Web Server 'http://localhost/MyWebApp could not be found.

이 웹 응용 프로그램에 대한 가상 디렉터리를 수동으로 설정하지 않았습니다.

동료마다 Visual Studio에서 가상 디렉터리를 만들라는 메시지가 표시되지만 프롬프트가 표시되지 않습니다.

개발자 컴퓨터에 IIS를 설치하기 전에 VS2010을 설치했습니다.

내 개발 머신 설정은 다음과 같습니다.

  • 윈도우 7 엔터프라이즈
  • 서비스 팩 1
  • 64 비트 OS
  • Visual Studio 2010 Enterprise 서비스 팩 1
  • IIS 버전 7.5


답변

이 경우 가장 쉬운 해결책은 가상 디렉터리를 수동으로 만드는 것입니다.

우선, 올바른 버전의 ASP.Net이 설치되어 있고 IIS 확장을 설치했는지 확인해야합니다.

이렇게하려면 C : \ (Windows) \ Microsoft.NET \ Framework \ (dotnetver) \의 관련 .net 버전 폴더로 이동하여 (PC의 올바른 폴더에 대괄호로 묶은 폴더를 대체)이 명령을 실행하십시오.

aspnet_regiis.exe -i

다음에 일단 실행되고 완료되면 때로는 실행

iisreset

명령 줄에서 도움을받을 수 있으며 때로는 필요하지 않습니다.

그런 다음 IIS 관리자로 이동하여 localhost 웹 사이트를 찾은 다음 폴더 추가를 선택하십시오. 실제 ASP.Net 프로젝트가 포함 된 프로젝트의 폴더를 찾아서 추가하십시오.

마지막으로 추가 한 폴더를 마우스 오른쪽 버튼으로 클릭하면 ‘애플리케이션으로 변환’또는 ‘가상 디렉토리 생성’또는 이와 유사한 옵션이 있습니다.

!! 가상 디렉터리 이름이 ‘MyWebApp’인지 확인하십시오 !!

솔루션을 다시로드하면 작동합니다.

조심하십시오; 이것은 프로그래밍 질문이 아니며 (실제로 게시해서는 안됨)이 지침은 일반적인 문제이므로 게시했지만 게시 한 조언은 일반적입니다. 내가 나열한 명령은 정확하지만 IIS에서 수행해야하는 단계는 버전과 계정 권한에 따라 다를 수 있습니다.

행운을 빕니다!


답변

허용되는 대답에는 IIS 관리자가 필요하고 IIS Express에는 IIS 관리자 나 UI가 없으므로 IIS Express 사용자를위한 솔루션은 다음과 같습니다.

Visual Studio를 열고 오류 메시지가 표시되면 프로젝트 솔루션 탐색기를 마우스 오른쪽 단추로 클릭하고 “{ProjectName} .csproj 편집”을 선택하십시오.

프로젝트 파일에서 다음 줄을 변경
하십시오. 파일
<UseIIS>True</UseIIS>

<UseIIS>False</UseIIS>
저장하십시오.

이제 프로젝트를 다시로드하십시오.
끝난.

그런 다음 프로젝트를 열 수 있습니다. 이 시점에서 IIS를 사용하려면 프로젝트 속성으로 이동하여 “웹”탭을 클릭 한 다음 IIS 사용 옵션을 선택하십시오. “가상 디렉토리 만들기”버튼이 있습니다. 디렉터리를 만들려면 관리자 권한으로 Visual Studio를 실행해야하므로 필요할 경우 그렇게하십시오.


답변

프로젝트 폴더를 열고 {Project} .csproj.user를 삭제 한 다음 Visual Studio에서 프로젝트를 다시로드하십시오.


답변

이 솔루션은 나를 위해 일했습니다 : 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 편집을 선택하고 아래 그림과 같이 다음 코드를 찾으십시오.

change the <UseIIS>True</UseIIS> to <UseIIS>False</UseIIS>

또는

change the <IISUrl>http://example.com/</IISUrl> to <IISUrl>http://localhost/</IISUrl>

csproj 스크린 샷


답변

나를 위해 .csproj 파일 에서이 두 줄을 삭제해야했습니다.

<ProjectGuid>{3AA499DF-4A65-43B7-8965-D08A4C811834}</ProjectGuid>
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

첫 번째 항목 만 삭제하려고 시도했지만 충분하지 않았습니다.

편집 : 많은 사용자가 지적했듯이 프로젝트 유형을 변경하거나 소스 제어 프로그램을 망칠 수 있습니다. 더 이상 가지고 있지 않은 학교 프로젝트이기 때문에 이러한 문제를 조사 할 수 없습니다. 시도 할 때주의하십시오. 최소한 삭제 한 내용을 복사하십시오.


답변

.csproj 또는 vbproj 파일을 편집하십시오. 이 항목을 찾아서 바꾸십시오.

<UseIIS>true</UseIIS> by <UseIIS>false</UseIIS>
<UseIISExpress>true</UseIISExpress> by <UseIISExpress>false</UseIISExpress>


답변

필자의 경우이 문제는 IIS 바인딩이 손상되어 발생했습니다. 특히, ‘http’바인딩이 삭제되었습니다. 그것을 다시 작성하면 문제가 해결되었습니다.