본문 바로가기

DB/MS SQL Server

SQL Server 2008 설치된 곳에 80포트 404에러

SQL Server에서 80포트 사용

Windows Server 2008 + SQL Server 2008 이 설치된 서버에 아파치 웹서버를 올리려고 하는데 아래와 같이 이상한 메시지가 나온다.

Not Found

HTTP Error 404. The requested resource is not found.


 

IIS인가?

처음에는 IIS 문제인줄 알았는데, Default Web Site와 DefaultAppPool을 정지했어도 여전히 Listening하고 있었다.


어떤 서비스가 80포트를 서비스하는지 아래 명령을 찾아보았지만,

  1. > netstat -noa | find ":80"
  2.   TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       4
      TCP    [::]:80                [::]:0                 LISTENING       4

 PID 4는 System 이었다!

  1. >tasklist /FI "PID eq 4"
  2. 이미지 이름                    PID 세션 이름              세션#  메모리 사용
    ========================= ======== ================ =========== ============
    System                           4 Services                   0        364 K

 

범인은 SQL Server의 SQL Server Reporting Services

Wireshark로 패킷을 보면 Server 명을 찾을 수 있을 것이라고 생각했는데,

Microsoft-HTTPAPI/2.0 였다.

HTTP/1.1 404 Not Found
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Date: Tue, 29 May 2012 05:06:19 GMT
Connection: close
Content-Length: 315

인터넷 검색을 해보니...

SQL Server Reporting Services(MSSQLSERVER)라는 서비스가 그런 일을 한다고 한다. => Microsoft HTTPAPI/2.0 disabling Apache

서비스 이름은 "ReportServer" 이다.

설명에 보면 "보고서를 관리, 실행, 렌더링, 예약 및 배달합니다."라고 되어 있었다.
실행파일은 "D:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer\bin\ReportingServicesService.exe"였다.


서비스를 멈추니...

  1. net stop ReportServer
    SQL Server Reporting Services(MSSQLSERVER) 서비스를 멈춥니다..
    SQL Server Reporting Services(MSSQLSERVER) 서비스를 잘 멈추었습니다.

80 포트로 서비스하는 것이 없어졌다.

서비스의 시작유형을 보니 자동(AUTO_START)로 되어 있었다.

  1. sc qc ReportServer
    [SC] QueryServiceConfig 성공
  2. SERVICE_NAME: ReportServer
            종류               : 10  WIN32_OWN_PROCESS
            START_TYPE         : 2   AUTO_START
            ERROR_CONTROL      : 1   NORMAL
            BINARY_PATH_NAME   : "D:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer\bin\ReportingServicesService.exe"
            LOAD_ORDER_GROUP   :
            태그                : 0
            DISPLAY_NAME       : SQL Server Reporting Services(MSSQLSERVER)
            종속성       :
            SERVICE_START_NAME : .\Administrator

시작유형을 수동으로 변경해주었다. (서버 재부팅시 포트 충돌이 발생할 수 있으므로)

  1. sc config ReportServer start= demand
    [SC] ChangeServiceConfig 성공