IIS를 통한 WCF웹 서비스/실버라이트 배포

기본적으로 크로스 도메인 문제를 해결해야 하는데 아래를 참고 하면 될 것입니다.

http://cafe.daum.net/smbitpro/TUaR/96

 


IIS를 이용하는 http서비스를 할 것이기 때문에 서버로 쓰기위한 컴퓨터에 IIS가 필요합니다.

설치가 되어있지않다면 제어판 -> 프로그램 추가/제거 -> windows구성요소 추가/제거를 누른뒤 응용프로그램 서버에서 인터넷 정보서비스 IIS를 설치 체크하고 설치합니다.





설치된 IIS를 실행합니다.

 

시작 -> 제어판 -> 관리도구-> 인터넷 정보 서비스관리

 

 

실버라이트 웹사이트를 돌리기 위해서는 asp.net v2.0이상이 있어야 하는데 웹 사이트 등록 정보를 통해 버전을 확인해 줍니다.



2.0이 설치 되어 있지 않다면





이후 설치된 윈도우의 위와 같은 폴더로 이동합니다여시서 명령어 aspnet_regiis -i 를 입력합니다그럼 asp.net을 설치한다는 화면이 지나갑니다.

 

버전확인이 끝나면 이제 실버라이트에서 컴파일된 파일인 xap파일을 열 수 있게 MIME설정을 해주어야 합니다.

웹 서비스를 제공할 사이트에서 속성을 클릭합니다.




기본 웹 사이트 ->속성 ->http 헤더-> 새 형식 에서 

연결된 확장명(A)

컨텍트형식(MIME)

.xaml

Application/xaml+xaml

.xap

Application/x-sliverlight-app

.bap

Application/x-ms-xbap

 

추가합니다여기 까지 했으면 웹페이지에서 실버라이트를 볼 준비가 어느정도 끝났습니다.




기본 웹사이트는 아마 c:\Inetpub\wwwroot 일겁니다정상적으로 됬다면 IIS의 해당 웹사이트에 파일을 볼 수 있습니다.




실제로 접속이 되는지 확인해 봅니다.

실제로 배포할 프로젝트를 실행하여 서비스 참조 구성을 선택합니다.



WCF서비스로 등록한 주소를 입력합니다.








웹 사이트에서 웹사이트 게시를 클릭합니다.

확인을 누르고 덮어 쓰기 하겠냐 하면 덮어 쓰기를 합니다그리고 대상 위치를 이동합니다이동하면 테스트 페이지와 서비스.svc 그리고 clientbin폴더 bin폴더 이렇게 구성된 폴더가 보입니다이곳의 모든 파일을 웹사이트 페이지로 이동합니다.이전에 있단 파일은 지우고 현재 파일로 대체합니다.

 

이렇게 하면 Database를 제대로 읽어 오지 못할 겁니다왜냐하면 주소가 제대로 지정되어 있지 않습니다. http://로 시작하는 부분이 컴퓨터 이름이 들어가 있습니다

 

기본 웹 사이트 -> 속성 ->웹사이트 -> 고급 -> 이 웹 사이트의 복수 ID -> 기본 -> 편집

 

 

웹사이트의 등록정보에 웹사이트에 고급에서 기본 ip 주소를 편집해 호스트 헤더값에 웹서비스를 실행하는 컴퓨터 ip를 적어 두고 다시 Service.svc를 확인해보면 아이피로 바껴 있는 것을 볼 수 있습니다.



+ Recent posts