2017-09-18 4 views
0

"정상적인"응용 프로그램 (또는 가능한 한 가까이에)으로 설치해야하는 웹 응용 프로그램과 ASP.net MVC 웹 응용 프로그램을 작성했습니다. 즉, "exe 파일을 두 번 클릭하면 웹 브라우저가 기본 브라우저로 열립니다"라는 동작이 가능하거나 가능한 한 가까이에 있어야합니다.명령 줄을 통해 IIS Express를 사용하여 특정 폴더에서 ASP.net 웹 사이트 시작

자바에 익숙해 져서 웹 서버를 사용하고 임베디드 웹 서버를 사용할 수 있다고 생각했지만 약간의 연구를 거쳤습니다. (내가 틀렸다면 수정하십시오.)이 작업을 수행 할 수없는 것으로 보입니다 (ASP.net 만 가능). 핵심은 그렇게 할 수 있지만 전통적인 .NET Framework를 사용하고 있습니다. 웹 응용 프로그램은 IIS 또는 IIS Express에서 실행해야합니다.

그래서, 더 많은 연구 후,이 페이지 :

iisexpress.exe /path:"C:\Program Files\MyWebsite\bin" 
:

https://docs.microsoft.com/en-us/iis/extensions/using-iis-express/running-iis-express-from-the-command-line

이 같은 명령을 사용하여 IIS Express를 통해 특정 폴더에서 사이트를 시작하는 것은, 가능하다는 것을 시사하는 것

위의 경로에는 컴파일 된 ASP.net MVC 웹 사이트가 들어 있습니다.

그러나 이것은 작동하지 않는 것 같습니다. 내가 명령 나는 다음과 같은 출력을 얻을 실행하면 :

c:\Program Files\IIS Express>iisexpress.exe /path:"C:\Program Files\MyWebsite\bin" 
Copied template config file 'c:\Program Files\IIS Express\AppServer\applicationhost.config' to 'C:\Users\MyUser\AppData\Local\Temp\iisexpress\applicationhost20179188941639.config' 
Updated configuration file 'C:\Users\MyUser\AppData\Local\Temp\iisexpress\applicationhost20179188941639.config' with given cmd line info. 
Starting IIS Express ... 
Successfully registered URL "http://localhost:8080/" for site "Development Web Site" application "/" 
Registration completed 
IIS Express is running. 
Enter 'Q' to stop IIS Express 

그래서 기본적으로 Express를 시작하지만, 그것이 내가 지정한 폴더에서 내 웹 사이트를 실행하지 않는 것 IIS를, 그것은 "개발 웹이라는 일부 (presumebly) 기본 빈 웹 사이트를 실행 대지". 몇 가지 URL을 확인했는데 내 웹 사이트가 아니라 페이지가없는 다른 빈 쉘이나 다른 것이 있는지 확인할 수 있습니다.

무엇이 여기에 있습니까? 명령 줄을 통해 IIS Express에서 웹 사이트를 어떻게 시작합니까? 먼저 웹 사이트를 어떻게 등록해야합니까?

편집 :

appcmd.exe add site /name:MySite /physicalPath:"C:\Program Files\MyWebsite\bin" /bindings:http://localhost:8081 

을 다음으로 시작 : : 좀 더 연구 한 후 가, 내가 발견 I을 수행하여 웹 사이트를 명시 적으로 등록 할 수 있습니다

iisexpress.exe /site:MySite 

이 있지만 아무튼 문제를 해결할 수 없습니다. 브라우저를 통해 웹 사이트를 탐색 할 때 404 오류가 발생하지만 콘텐츠가 전혀 없습니다.

ASP.net 웹 사이트가 DLL 파일로 컴파일 되었기 때문에 폴더에 대한 경로를 사용하여 등록/시작하는 방법이 얼마나 간단한 지 이해할 수 없습니다. IIS Express는 사이트를로드 할 DLL을 이해하고 있습니까? 여기에 빠져있는 중요한 조각들이있는 것처럼 보입니다 ...

+0

당신은이 문서를 볼 수 있습니다 : https : //로 문서. microsoft.com/en-us/iis/extensions/using-iis-express/running-iis-express-from-the-command-line. 기본적으로 IIS Express는 applicationhost.config에서 구성을 사용하고 지정된 스위치를 사용하여 구성을 변경합니다. –

+0

@ TetsuyaYamamoto : 감사합니다. 그러나 그러한 구성 파일을 작성하는 방법에 대한 자습서/예제가 있습니까? 나는 기본값을 살펴 봤는데 그것은 거대하다! 나는 내 자신을 창조하는 시작하는 방법을 모르겠다 ... 모든 포인터? –

+1

https://docs.microsoft.com/en-us/iis/get-started/planning-your-iis-architecture/introduction-to-applicationhostconfig & https://docs.microsoft.com에있는 지침을 따르십시오. com/ko-kr/iis/get-started/planning-your-iis-architecture/iis-7-and-iis-8-configuration-reference를 참조하십시오. 주어진 리소스는 자신 만의 applicationhost.config 파일을 만들 정도로 충분합니다. –

답변

1

추가로 땜질 후에, 나는 알아 낸 것입니다. 나는 웹 사이트의/bin 디렉토리를 가리키고 있었다. 대신, Web.config 파일이 들어있는 상위 디렉토리를 가리켜 야합니다.

iisexpress.exe /path:"C:\Program Files\MyWebsite\bin" 

에 :

그래서, 내 경우에는 내가 변경

iisexpress.exe /path:"C:\Program Files\MyWebsite" 

이제 제대로 작동