[XAMPP] Apache, MySQL이 구동되지 않을 경우 체크사항

XAMPP를 사용하다 보면 Apache나 서비스 구동이 되지 않는 경우가 간혹 있습니다. 이 경우 우선적으로 체크해야 할 사항으로는 다음의 두 가지가 있습니다.

  1. 이미 다른 버전의 Apache나 MySQL이 구동중인지 여부
  2. Apache의 설정파일 (httpd.conf) 파일의 내용중에 오타가 없는지 여부
  3. Apache나 MySQL은 정상적으로 구동되지만 phpinfo() 함수의 호출 결과가 아무것도 표시되지 않을 경우

 

이미 다른 버전의 Apache나 MySQL이 구동중인 경우

윈도우의 작업 관리자를 엽니다. 작업관리자는 윈도우의 작업표시줄에서 마우스 우클릭을 통해 접근할 수 있습니다.

 

작업 관리자를 열었을 때 httpd.exe나 mysqld.exe 라는 이름의 프로세스가 존재하는지 확인해 봅니다.

윈도우 10의 경우 “세부 정보” 탭에서, 윈도우 7의 경우 “프로세스” 탭에서 확인할 수 있습니다.

 

프로세스가 발견되었다면 해당 항목들을 선택하고 화면 우측 하단의 “작업 끝내기” 버튼을 클릭하여 프로세스를 강제 종료 합니다. XAMPP에 포함된 Apache나 MySQL이 아님에도 불구하고 이 프로세스들이 표시되고 있다는 것은 현재 사용중인 컴퓨터에 다른 버전의 Apache나 MySQL이 이미 설치되어 있고 자동으로 구동되고 있다는 점을 의미합니다.

그렇다면 해당 프로그램들을 찾아서 삭제해야 합니다. APMSetup, Autoset, WAMP, MAMP 등의 프로그램을 설치한 경우이거나 MySQL을 mysql.com에서 직접 다운로드 받아 설치한 경우 이런 현상이 발생할 수 있습니다.

만약 JSP를 공부하는 과정에서 MySQL을 별도로 설치한 경우라면 해당 버전을 삭제하고 XAMPP에 있는 MySQL을 사용해도 JSP를 공부하는데 아무런 지장이 없으므로 MySQL은 XAMPP에 설치된 버전을 JSP공부와 PHP공부에 함께 사용하는 것을 권합니다.

 

 

Apache 설정 파일이 잘못된 경우

이 경우는 MySQL은 정상적으로 구동되는데 Apache만 구동되지 않는 형태로 문제가 발생합니다. 문제의 원인을 파악하기 위해서 우선 Apache를 명령줄 상태로 시작해 봐야 합니다.

XAMPP의 화면 우측에서 “Shell” 버튼을 클릭합니다.

 

명령 프롬프트가 실행되면 다음의 명령어를 입력합니다.

apache_start.bat

아파치 서버를 수동으로 시작하려고 시도하고 문제가 발생하게 되면 에러 메시지가 화면에 표시됩니다. 아래의 에러 메시지에서는 httpd.conf 파일의 247라인에 문제가 있다고 표시되고 있습니다. 이 방법으로 자신의 설정 파일에 어떠한 문제가 있는지 확인해 볼 수 있습니다.

 

phpinfo() 함수의 실행 결과가 아무것도 표시되지 않을 경우

이 경우는 웹 브라우저에서 마우스를 우클릭하여 HTML 소스보기를 했을 때 PHP원본 소스코드가 표시되는지 확인해 봐야 합니다. 간혹 phpinfo() 이외의 php 소스코드는 화면에 그대로 노출되는 경우도 있습니다.

 

이 경우는 php.ini 파일에서 “short_open_tag” 설정이 “On”으로 지정되지 않은 경우 입니다. XAPMM의 Control Pannel에서 Apache 항목의 “config > PHP (php.ini)” 항목을 선택하고 설정파일을 열어서 해당 부분을 수정해 준 후 Apache를 재시작 하면 됩니다.

 

답글 남기기