OpenSource

Apache Windows 2008에서 빌드 설치하기

아르비스 2016. 4. 10. 01:27

설치 환경 : Windows Server 2008 R2 Enterprise

설치 대상: Apache 2.4.x


1. . Visual C++ Redistributable for Visual Studio 2012 설치

경로 : https://www.microsoft.com/en-us/download/confirmation.aspx?id=48145

파일 : vcredist_x64.exe (13.9MB)

apache 빌드는 Visual C++ Redistributable for Visual Studio 2012 해당 프로그램 필요하니 미리 설치



2. Apache 64bit 설치

경로 : https://www.apachehaus.com/cgi-bin/download.plx  (openssl 포함버전)

( https://www.apachelounge.com/download/ (기본 버전) )

파일 : httpd-2.4.20-win64-VC14.zip

https://www.apachehaus.com/cgi-bin/download.plx?dli=wUWZUThtWQy4keVtGVyUUNKVlUGR1UwZXTrVjS



압축을 푼후 원하는 폴더에 Apache24폴더를 복사

(보통 C:\ 나 C:\Program Files를 많이 애용)

cmd 실행시킨후 

cd C:\Apache24\bin 

httpd.exe -k install

명령을 실행하여 아파치를 서비스에 등록


[서비스 설치]

> httpd -k install



[서비스 제거]

> httpd -k uninstall


[서비스 시작]

> httpd -k start


[서비스 종료]

> httpd -k stop


[서비스 재시작]

> httpd -k restart





이런 에러 발생시



액세스 권한에 의해 숨겨진 소켓에 액세스를 시도했습니다.  : AH00072: make_sock: could not bind to address 


아파치 설치 후 구동이 되지 않아 원인을 찾아보니

80포트를 사용할 수 없어서였다...


다음과 같은 에러 발생

The Apache service named  reported the following error:

>>> (OS 10013)액세스 권한에 의해 숨겨진 소켓에 액세스를 시도했습니다.  : make_sock: could not bind to address 0.0.0.0:80     .

이런 경우 80포트를 어디선가 사용하는 경우임.

System 이 80 port를 사용하는 경우가 있음.


C:\> netstat -a -o

C:\> tasklist /fi "pid eq PID"


다음의 프로세스가 구동중이면 죽여보자

PID 4 is SYSTEM

80 port를 iis에서 사용한다.

[죽이는 법]


NET stop HTTP

ex


C:\Apache24\bin>NET stop HTTP 

다음 서비스는 HTTP 서비스에 영향을 받습니다.

HTTP 서비스를 멈추면 다음 서비스도 멈추어 집니다.


   Windows Remote Management (WS-Management)

   World Wide Web Publishing Service

   Print Spooler


이 작업을 계속하시겠습니까? (Y/N) [N]: y

Windows Remote Management (WS-Management) 서비스를 멈춥니다..

Windows Remote Management (WS-Management) 서비스를 잘 멈추었습니다.


World Wide Web Publishing Service 서비스를 멈춥니다..

World Wide Web Publishing Service 서비스를 잘 멈추었습니다.


Print Spooler 서비스를 멈춥니다..

Print Spooler 서비스를 잘 멈추었습니다.



HTTP 서비스를 잘 멈추었습니다.


다음은 443 포트 역시 사용중임

netstat -a -n -o | findstr 443

만약 이렇게 나온다면.


C:\Apache24\bin>tasklist /fi "pid eq 4224"


이미지 이름                    PID 세션 이름              세션#  메모리 사용

========================= ======== ================ =========== ============

magentproc.exe                4224 RDP-Tcp#0                  2      5,960 K

 

이건 loadrunner가 설치되어서 나오는 에러임.



다른 에러..


httpd: Syntax error on line 168 of C:/Apache24/conf/httpd.conf: Cannot load modules/mod_ssl.so into server: 

\xc1\xf6\xc1\xa4\xb5\xc8 \xb8\xf0\xb5\xe2\xc0\xbb \xc3\xa3\xc0\xbb \xbc\xf6 \xbe\xf8\xbd\xc0\xb4\xcf\xb4\xd9. 


C:\Windows\System32 폴더에 msvcr71.dll 파일이 없는 경우입니다.

msvcr71.dll 파일은 Microsoft® C Runtime Library 파일로 웹 검색이나 주변PC로부터 찾아서 설치하시면 된다.