해결된 질문
작성
·
52
·
수정됨
0
수업한 내용을 바탕으로
visual studio에서 배포를 한 후
배포한 경로로 iis 세팅을 하였습니다~
view페이지를 수정 할때마다 iis를 재기동 해야하는 문제가 발생하는데 웹폼처럼 view페이지(자바스크립트부분) 만 수정 할 수 있나요? 만약에 view페이지를 수정할때마다 배포를 하고 iis를 잠시 껐다 켜야하면 실무적으로 사용할 수 없는기술이 아닌가 싶어서요
제 질문은 view 페이지의 수정이 빈번하게 발생할때 iis 재기동 없이 업데이트 할 수 있는 방법이 있는지 여쭤보고 싶네요
웹폼처럼.. aspx파일만 수정하면 반영됬으면 좋겠는데...
답변 2
0
안녕하세요.개발자park입니다.
답변을 늦게봤네요.죄송합니다.
[1]
프로젝트를 더블 클릭후 아래내용을 붙여넣어주십니다.
<CopyRazorGenerateFilesToPublishDirectory>true</CopyRazorGenerateFilesToPublishDirectory>
[2]
msdn지침대로 설치해주십니다.
주의상항은 아래 적어놨습니다. ㄱ부터 읽어주시면 됩니다.
관련주제:
링크:
ㄱ]
A]-nuget package설치하기전에, 먼저 프로젝트를 간단하게 게시해줍니다.
B]-HelloASP.deps.json파일을 메모장으로 열어줍니다.
C]-버전을 확인해줍니다.
D]- 주의사항★위 그림과 nuget package의 버전을 일치시켜줍니다.
msdn에 나오는 package입니다.
ㄴ program.cs에 다음 내용을 추가해줍니다.
builder.Services.AddControllersWithViews();
builder.Services.AddRazorPages()
.AddRazorRuntimeCompilation();
ㄷ]Views폴더에 들어가서
cs html파일 메모장으로 열어서 내용 변경해주시면 됩니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. 김대홍님.
ASP.NET Core를 IIS에 배포한 후, View 페이지 (특히 자바스크립트 부분)를 수정할 때마다 IIS 재기동 없이 업데이트할 수 있는 방법에 대해 질문 주셨군요.
ASP.NET Core MVC 프로젝트를 배포할 때, 특히 View와 같은 정적 파일의 일부를 수정하고자 할 경우, IIS를 재기동하지 않고 변경 내용을 적용할 수 있는 몇 가지 방법이 있습니다.
정적 파일 캐싱 방지: 정적 파일에 변경이 있을 때, 브라우저 캐시를 통해 옛 파일이 제공되지 않도록 설정하는 것이 중요합니다. 파일의 이름에 버전이나 고유한 식별자를 추가하여 캐싱을 제어할 수 있습니다. 보통 <script src="app.js?v=1.0">
처럼 버전을 명시해주면 브라우저가 매번 새 파일로 인식합니다.
파일 업데이트를 위한 라이브 리로드 도구 사용: 개발 환경에서는 자주 사용하는 도구들 (예: BrowserSync, LiveReload 등)을 활용하여 변경 사항이 있을 때 자동으로 브라우저에 반영되도록 할 수 있습니다.
IIS 설정 조절: Web.config 파일을 변경하거나 IIS의 응용프로그램 풀을 다시 시작하지 않고도, append 1 stamp
같은 매개변수를 사용하여 파일 변경 시 자동으로 새 버전을 읽도록 설정할 수 있습니다. 정적 파일의 경로에 QueryString 파라미터를 추가하여 브라우저가 매번 최신 파일을 요청하게 할 수 있습니다.
다음 글에서는 그런 해결 방안들에 대해 더 자세히 이야기하고 있습니다:
- ASP.NET Core - Change Static Files Versioning
잘 구성된 환경에서는 실행 완료된 블라블라를 통해 재기동 없이도 수정을 가능하게 할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
답변감사합니다!!