none
윈도우2003서버에서 자바스크립트. RRS feed

  • 질문

  •  

    안녕하세요.

     

    윈도우2003 St의 iis6.0에서 웹서비스를 진행하고 있습니다.

    윈도우2000에서 서비스하던것을 윈도우2003으로 이전하였습니다.

     

    그런데 특정 사이트에서 문제가 발생하는데요.

    그 페이지의 소스를 보면 자바스크립트에 관련된것들입니다.

    하나는 자바스크립트로 구현되어 설치화일(exe , cab)화일을 실행하면서 설치하는 것이구요.

    하나는 특정 ini화일(날짜만입력됨)을 참조로 zip화일을 풀어서 업그레이드 설치하는 형태입니다.

    클라이언트에서 설치나 업그레이드시 에러가 납니다.

    자바스크립트에서 설치화일에 대한 경로나 정보를 제공하게 되어 있는데 이상하게 정보를 못찾는거 같습니다.

    윈도우2003에서 자바스크립트에 대한 제약이 있나요?

    여러곳을 뒤적거려보았지만 뾰족한 해답이 없네요.

    여러분들의 조언을 구합니다. 

    2007년 10월 1일 월요일 오전 10:55

모든 응답

  • 아래 두 KB를 참고하세요

     

    IIS 6.0에서는 알 수 없는 MIME 형식을 처리하지 않는다

    http://support.microsoft.com/kb/326965/ko

     

    HOWTO: IIS에서 웹 콘텐츠에 대한 웹 서버 사용 권한 구성

    http://support.microsoft.com/kb/313075/ko

     

     

     

     

    IIS 6.0에서 변경된 기본 사용 권한 및 사용자 권한도 확인하시기

    바랍니다.

    http://support.microsoft.com/?id=812614

    2007년 10월 1일 월요일 오전 11:09
  •  

    답변에 감사드립니다.

     

    나머지는 설정에 문제가 없어보이구요.

     

    MIME쪽 문의 한번 해 봅니다.

     

    현재 IIS의 전역형식에 이미 등록이 되어 있는데요, 이곳에 등록되어 있지 않는것들에 대한 추가 확장MIME를

    등록하는거 같은데, 따로 등록해야하는것이 있나요?

     

    해당문서를 조회하고 확인해 봤는데, 별다른 설정에 대한 확신이 없습니다.

    다시한번 살펴주시면 고맙겠습니다.

     

    제가 생각하기는 iis6.0에서 자바스크립트로 구현된 함수를 호출하면 해당 데이타를 가져오지 못하는 문제같습니다.

    그럼.

    2007년 10월 4일 목요일 오전 4:15
  •  

    "자바스크립트는 서버에서 다운받은후 클라이언트에서 실행됩니다"


    서버측 보안상의 이유로 참고/점검 해야 할점은 아래와 같습니다.


    1. IIS6 은 서버측에서 "executables/scripts" 옵션을 해야 스크립트 실행이 가능합니다.
       디폴트는  no executable/scripts 입니다.


    2. IIS6  지정된(등록된) MIME Types 만 Hosting 합니다  
       즉 .exe 파일을 클라이언트에서 다운받아야 한다면 .exe MIME Type 이 등록되어 있어야
       합니다.

       디폴트는 .js , .css, .html등이 등록되어 있습니다.

       .* (모든 확장자에 대한 MIME Type을 등록하면 MIME TYPE 문제는 사라집니다만... :-; )


    3.Web-Extension 에서 기능을 Enable  해야 합니다.
       즉 ASP , ASP.Net , PHP , JSP 등 서버사이드 스크립트 페이지가
       있다면 각각 관련기능을 Enable해야 서비스가 가능합니다.


    문의하신 자바스크립트(.js)는 기본적으로 등록된  MIME TYPE이기 때문에
    클라이언트에 다운로드가 가능합니다만  Include된 .JS파일을 감싸고 있는
    서버사이드 스크립트에 대한 MIME Type 이 등록되어 있지 않으면 클라이언트
    에 관련페이지가 파싱되어 다운로드가 되지 못하기 때문에 아무런 진행을
    할수가 없습니다. 이 부분도 체크가 되어져야 합니다.

    또한  IIS6의 디폴트 서비스계정인 "NT Authority\Network service"는
    매우 적은 권한만을 가지고 있기 때문에 특정한 폴더안의 스크립트파일을
    실행할수가 없습니다
    (Network Service혹은 IIS_WPG그룹에 대한 권한이 부여가 되어있는지 확인해야 합니다)

     

    아래 KB를 확인하세요

    IIS and Built-in Accounts
    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/3648346f-e4f5-474b-86c7-5a86e85fa1ff.mspx

     

    4. URLSCAN 혹은 기타 모듈이 설치되어있지 않나요?

       - URLSCAN은 디폴트로 JS 안됩니다 :-(


    [테스트사항]

     

    각각을 테스트해서 스크립트수행을 점검합니다.

     

    0.  문제상황시의 IIS로그를 확인합니다.
        - .js  파일요청시 404 에러가 발생한다면 추가적인 MIME TYPE Mapping  이 필요합니다.  

     

    1.  iis6 에서 IIS 5.0 isolation mode 구성으로 동일테스트를 진행합니다
        ISAPI filter does not show up as "loaded" in UI (IIS 6.0)
        http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/93f23233-2a47-4104-b0b4-a7ec0d3116f3.mspx?mfr=true

     

    2. Script를 포함한 페이지 실행시 Filemon.exe  를 실행해서
       스크립트가 저장된 폴더,파일에 대한 Access Denied 검출여부를 확인합니다.

     

    3. IIS6의 Worker Process 디폴트 서비스계정인 "NT Authority\Network service"에 대해
       스크립트가 참조하는 폴더,파일에 대한 권한을 모두 부여해 준후 동일 테스트를 진행합니다.
       (Filemon.exe으로 File Access 에 대한 캡쳐가 필요 )

       => "Local Service"/"Local System" 로 변경한후 테스트해서 동일이슈가 재연되는지 확인
     
      

    2007년 10월 4일 목요일 오전 5:23