Web2020. 1. 14. 22:51

아파치 서버는 PHP와 MySQL(MariaDB)의 조합으로 사용되는 경우가 많습니다.

PHP는 문법이 쉽다는 장점과 다양한 함수를 제공하고 있다는 장점이 있습니다. 그리고 MySQL은 오픈소스 무료이면서 성능이 우수하다는 장점이 있기 때문에 아파치 서버 + PHP + MySQL의 조합이 많이 사용되고 있습니다. 그리고 모든 프로그램이 무료로 사용할 수 있는 오픈소스이기 때문에 이 세 개의 조합으로 웹 서버를 구성한다면 아무런 비용도 들지 않는다는 장점도 있습니다. 이 세 개의 조합은 짧게 줄여서 APM(Apache PHP MySQL)이라고 부릅니다.

아파치 서버와 PHP, MariaDB의 설치 파일은 다음 URL을 통하여 다운로드할 수 있습니다.

  1. Visual Studio 2015용 Visual C++ 재배포 가능 패키지: vc_redist.x64.exe
    https://goo.gl/kncWH3
  2. Apache 2.4 (for Windows x64): httpd-2.4.41-win64-VS16.zip
    원본 페이지 바로가기 (최신버전 다운로드)
  3. MariaDB 10 (for Windows x86, x64): php-7.3.13-Win32-VC15-x64
    원본 페이지 바로가기 (최신버전 다운로드)
  4. PHP 7 (for Windows x64 on VC15): mariadb-10.5.0-winx64
    원본 페이지 바로가기 (최신버전 다운로드)

 

이 글에서는 64비트 윈도우즈에 64비트 아파치 서버를 설치할 것입니다. 따라서 위 링크를 통하여 다운로드되는 설치파일이나 소스코드 압축파일은 모두 64비트용입니다. 64비트 아파치 서버를 사용한다면 PHP도 역시 64비트용으로 설치해야 합니다.

참고로 64비트 윈도우즈라 하더라도 32비트 소프트웨어도 설치는 가능합니다. 왜냐하면 윈도우즈에는 32비트 시스템 파일과 64비트 시스템 파일이 따로 존재하기 때문입니다.

※ 중요: 최신 버전의 아파치 서버와 PHP를 실행하기 위해서는 Visual C++ 2015 라이브러리가 필요합니다. Visual C++ 2015 라이브러리는 위의 1번 URL을 통하여 다운로드할 수 있습니다.

아파치 서버와 PHP를 설치하기에 앞서, 위에서 다운로드한 Visual C++ 2015 라이브러리를 가장 먼저 설치하시기 바랍니다. 이 라이브러리가 우선적으로 설치되지 않는 경우에는 아파치 서버와 PHP가 정상적으로 작동하지 않기 때문입니다. 다운로드한 파일을 실행하면 자동으로 설치가 진행됩니다. Visual C++ 2015 라이브러리도 64비트를 설치하시기 바랍니다.

 

아파치 서버 설치

다운로드한 httpd-2.4.27-Win64-VC15.zip 파일은 컴파일된 윈도우용 아파치 서버 파일이 포함되어 있는 압축파일입니다. 리눅스용 아파치 서버는 사용자가 직접 컴파일을 해야 하지만, 윈도우용은 미리 컴파일되어 배포되고 있습니다.

접근하기 쉬운 적당한 경로에 아파치 서버 압축 파일을 풀어줍니다. 이 글에서는 아파치 서버의 기본 설치 폴더인 C:\Apache24 에 압축을 풀었습니다.

압축을 풀었으면 다음 명령어를 실행하여 Windows 서비스에 아파치 서버를 등록합니다. 만약 접근 거부 오류 메시지가 나타난다면, 관리자 권한으로 실행을 해야 합니다. 이 때에는 아래의 내용을 커맨드 파일(*.cmd)에 저장한 후 관리자 권한으로 실행하면 됩니다.

  1. C:\Apache24\bin\httpd.exe -k install

C:\Apache24 가 아닌 다른 곳에 압축을 풀었다면, 아파치 서버 설정 파일(httpd.conf)을 수정해야 합니다. {아파치 서버 설치 경로}\conf\httpd.conf 를 실행한 후, c:/Apache24 로 되어 있는 기본 설치 경로를 현재 설치되어 있는 아파치 서버의 설치 경로로 적당히 변경해줍니다. 메모장에서 c:/Apache24 를 검색한 후 수정하면 편합니다.

Windows 서비스에 아파치 서버가 잘 등록되었는지는 Windows 서비스 관리자에서 확인할 수 있습니다. Windows 서비스 관리자는 [제어판] – [시스템 및 보안] – [관리 도구] – [서비스] 로 접근이 가능합니다. 아니면 services.msc을 직접 실행해도 됩니다. 서비스 목록에 Apache 2.4 항목이 있다면 아파치 서버가 정상적으로 설치된 것입니다.

※ 참고: httpd.conf 의 내용 중에 서버 이름을 지정하는 ServerName 속성이 있을 것입니다. 서버의 도메인과 포트번호를 이용하여 ServerName의 값을 지정하면 됩니다. 예를 들면, localhost:80.

 

PHP 설치

위에서 다운로드한 php-7.1.7-Win32-VC14-x64.zip 파일은 64비트 윈도우용 PHP 파일이 포함되어 있는 압축파일입니다. 아파치 서버를 설치할 때와 마찬가지로 접근하기 쉬운 경로에 압축을 풀어줍니다. 이 글에서는 윈도우용 PHP의 기본 폴더인 C:\PHP 에 압축을 풀었습니다. 압축을 풀었다면 다음 과정을 통하여 PHP 설치를 마무리하도록 합니다.

PHP가 설치된 경로에 있는 php.ini-development 파일의 이름을 php.ini로 변경합니다. php.ini 파일은 PHP를 설정할 때 사용되는 파일입니다. 확장기능을 추가하거나 가상 호스트를 설정할 때 이 파일이 사용됩니다.

PHP 설치를 마무리하기 위해서는 php.ini 파일의 내용을 조금 수정해야 합니다. 수정하지 않으면 PHP에서 MySQL, GD와 같은 확장기능을 불러올 때 문제가 발생할 수도 있기 때문입니다.

우선 ; extension_dir = “./” 을 extension_dir = “C:\PHP\ext\” 로 수정합니다. 문자열 앞의 세미콜론은 꼭 삭제하시기 바랍니다. php.ini 에서 세미콜론은 주석으로 사용됩니다. 메모장에서 검색한 후 수정하면 편합니다.

그리고 Windows Extensions 부분에 있는 확장기능 설정 중에서 PHP가 MySQL 관련 확장기능 DLL 파일을 사용할 수 있도록 해야 합니다.

  • extension=php_mysql.dll PHP 7에서 지원 종료된 확장 → php_mysqli.dll로 대체
  • extension=php_mysqli.dll
  • extension=php_pdo_mysql.dll

이렇게 세 개두 개의 확장을 사용할 수 있도록 문자열 앞에 있는 세미콜론을 삭제해줍니다.

모든 내용을 수정했다면, php.ini 파일을 C:\Windows 폴더로 잘라내기/붙여넣기(이동O, 복사X)합니다. 복사/붙여넣기가 아니라 꼭 잘라내기를 하시기 바랍니다. 왜냐하면 PHP 폴더에도 php.ini가 존재하는 경우에는 Windows 폴더의 php.ini와 서로 충돌이 발생할 수도 있기 때문입니다.

 

아파치 서버와 PHP의 연동

아파치 서버와 PHP의 설치를 모두 마쳤으니, 이제는 아파치 서버와 PHP를 서로 연동시켜야 합니다. 아파치 서버와 PHP는 따로 설치되었기 때문에, 이 둘을 연동시켜주는 작업은 꼭 필요합니다.

우선, 아파치 서버의 기본 설정 파일을 수정해야 합니다. C:\Apache24\conf\httpd.conf 파일을 메모장에서 불러옵니다. 그리고 맨 아래쪽에 다음의 내용을 추가합니다.

  1. PHPIniDir "C:/Windows"
  2. LoadModule php7_module "C:/PHP/php7apache2_4.dll"
  3. AddType application/x-httpd-php .html .php

위의 내용을 아파치 서버 설정 파일에 추가함으로써 아파치 서버와 PHP는 서로 연동됩니다. 모든 설정을 저장한 후, Windows 서비스 관리자에서 아파치 서버를 재시작하면 PHP와 아파치 서버가 함께 시작됩니다.

 

MariaDB 설치

윈도우즈용 MariaDB는 Windows Installer을 통하여 설치가 진행되기 때문에 설치 과정이 매우 간단합니다. 다운로드한 mariadb-10.2.7-winx64.msi 설치파일을 실행합니다. MariaDB를 실행하기 위해 필요한 부가적인 프로그램이 필요하면 추가적으로 설치를 진행하고, MariaDB 설치가 진행됩니다.

MariaDB를 설정하는 대화상자에서는 ROOT 계정의 패스워드와 MariaDB의 자동실행 여부를 지정할 수 있습니다. 본인의 취향에 맞게 설정하면 됩니다. 만약 자동실행 옵션을 선택하지 않는다면 MariaDB를 직접 실행해야 합니다. 직접 실행하는 방법으로는 윈도우 서비스 도구를 사용하는 방법과 MariaDB 콘솔을 사용하는 방법이 있습니다.

MariaDB 설치를 모두 마쳤다면, 아래의 PHP 소스코드를 이용하여 MariaDB가 제대로 동작하는지 확인합니다.

  1. <?php
  2.  
  3. // 기본 타임존 설정
  4. date_default_timezone_set('Asia/Seoul');
  5.  
  6. // 데이터베이스 테스트
  7. $mysqli = new mysqli('localhost', 'root', 'password', 'information_schema');
  8. if ($mysqli->connect_errno) {
  9. die('Connection Error ('.$mysqli->connect_errno.'): '.
  10. $mysqli->connect_error);
  11. }
  12.  
  13. // PHP 정보 출력
  14. phpinfo();

PHP 정보가 출력된다면 MariaDB와 아파치 서버, PHP가 제대로 작동하고 있다는 것을 의미합니다. 참고로 아파치 서버의 기본 문서 루트 경로는 C:\Apache24\htdocs 입니다. 이곳에 PHP 파일과 각종 HTML 파일을 저장하면 인터넷에서 확인할 수 있습니다. 이 경로는 httpd.conf 파일을 수정함으로써 바꿀 수 있습니다.

원글: http://www.walterz.net/2017/07/19/%EC%9C%88%EB%8F%84%EC%9A%B0%EC%97%90-%EC%95%84%ED%8C%8C%EC%B9%98-%EC%9B%B9-%EC%84%9C%EB%B2%84-php-mysql-%EC%84%A4%EC%B9%98/

Posted by iWithJoy