[윈도우10 64bit] APM Apache 2.4 아파치 설치과정 정리(웹서버 구축)
[윈도우10 64bit] APM : Let's Encrypt SSL 인증서 수동 발급과 아파치(Apache)에 적용하기 에 이어...
※ 2018. 11. 23. 추가.
PHP 버전은 본인이 사용하는 CMS에서 대응하는 가장 높은 버전으로 선택하는 것이 좋으며, 이는 PHP 최신 버전이 아닐 수 있습니다. PHP 최신 버전은 본인이 사용하는 PHP 기반 프로그램들이 대응한다고 발표하면 그 때 업그레이드하는 것을 권합니다.
2. PHP 7.0 설치
검색해보니 PHP 프로그램은 PHP 프로그래밍 언어를 처리할 수 있는 툴 같습니다. APM 중에 PHP가 들어가기도 하거니와, 설치형 워드프레스를 쓰려면 필수적으로 있어야 된다고 하니까... 설치해 봅니다. 아파치보다 성공과정이 좀 까다로울 수 있다고 생각합니다.
http://windows.php.net/download/
에서 PHP 최신버전을 받을 수 있는데, PHP 종류도 많고 분류도 장황해 보입니다.
당황하지 말고 왼쪽 아래의 “Which version do I choose?” 부분을 째려봅시다.
순서대로 요약해 보자면 “IIS는 Non-Thread Safe (NTS) 버전 / Apache는 Thread Safe (TS) 버전 / VC14 빌드(PHP 7.0)는 Visual C++ Redistributable for Visual Studio 2015 선행설치 요구 / TS는 멀티쓰레드 가능함” 이네요.
아파치 설치과정 포스팅에서 Visual C++ 2015 재배포 가능 패키지는 설치했으니까 건너뛰어도 될테고(→ 하위버전이 필요한 경우도 있으니까, 설명에서 깔으라고 하는 구성요소들(Visual C++ XXXX 재배포 가능 패키지)은 한번씩 설치 시도해보세요. 깔리면 깔고, 안깔리면 말고.)
아파치에 붙여쓰는 PHP니까 PHP 7.0 VC14 Thread Safe 로 받으면 됩니다. 저는 64비트로 받을 거예요(아파치가 32비트면 PHP도 32비트 / 아파치가 64비트면 PHP도 64비트로 가는겁니다.).
PHP 7.3은 VC15 Thread Safe 겠네요.
다운받은 ZIP 파일을 원하는 설치경로에 압축을 풀어줍니다. 저는 C:\php7 에 풀었습니다(위 스샷 참조).
그리고 해당 경로에서 php.ini-production 파일을 메모장같은 에디터로 열어서 php.ini 이름으로 저장해 줍니다. 이제 php.ini는 환경설정 파일로서의 역할을 합니다. 우리는 php.ini 의 내용을 적절히 수정해야 합니다.
▲ 메모장은 관리자 권한으로 실행했습니다.
; extension_dir = "./" 을 찾아서 주석(; - 세미콜론)을 제거하고 따옴표 안의 경로를 “php 설치 디렉토리/ext” 의 형태로 수정합니다. 이때 디렉토리 기호인 \는 될 수 있으면 /로 변경하도록 합니다.
저는 extension_dir = "C:/php7/ext" 라고 적었습니다.
저장하고 빠져나옵니다.
이제 Apache 2.4와 PHP를 연동하는 과정이 필요합니다. 아파치 설치경로\conf 폴더에 있는 httpd.conf 파일을 에디터(메모장 등)로 엽니다.
Ctrl+F로 <IfModule dir_module>을 찾아서 DirectoryIndex에 index.php을 index.html 앞에 넣습니다.
그리고 맨 밑에 아래의 구문을 추가합니다.
PHPIniDir "php.ini 파일이 있는 경로"
LoadModule php7_module "php 설치경로/php7apache2_4.dll"
AddType application/x-httpd-php .html .php
AddHandler application/x-httpd-php .php
제 경우는 아래 스샷처럼 적용했네요.
※ 2020. 12. 03. 추가 : "히로"님 제보
(참조 링크 : https://www.apachelounge.com/viewtopic.php?p=39307 )
PHP 8.0 버전은 아파치 httpd.conf 설정 파일의 LoadModule php7_module 구문이 작동하지 않는다고 합니다. error를 뿜는다는데, 그래서 LoadModule 구문을 아래처럼 구성하면 된다고 하네요.
(모듈명에 php 버전을 적지 않는 식으로 대응.)
LoadModule php_module "php 설치경로/php8apache2_4.dll"
저장하고 빠져나와서 아파치 서비스를 재시작합니다.
(Win+X → 명령프롬프트(관리자) → httpd -k restart 입력)
아파치 웹문서 저장공간(저는 C:\Apache24\htdocs 입니다.)에 메모장으로 아래처럼 쳐넣고 phpinfo.php 라는 파일이름으로 저장합니다.
<?php
phpinfo();
?>
웹브라우저 주소창에 http://localhost/phpinfo.php 라고 입력해 봅니다.
위 스샷처럼 정보화면이 뜨면 PHP7.0 설치 성공한 겁니다.
잘 안되면 컴퓨터 재부팅 후 다시 http://localhost/phpinfo.php 에 접근해 보시고,
그래도 안되면 아파치와 PHP, Visual C++ 2015 재배포 가능 패키지를 32비트로 교체해서 진행해 보세요. 명령프롬프트(관리자)에서 httpd -k stop 명령으로 아파치서비스를 잠시 중지하고 기존의 아파치&PHP 폴더이름을 잠깐 바꿔놓은 뒤 Visual C++ 2015 재배포 가능 패키지 설치, 아파치 32비트 압축풀고 설정파일 건드려주고, PHP 32비트 압축풀고 설정파일 건드려준 뒤 명령프롬프트(관리자)에서 httpd -k start 라고 입력하면 32비트 웹서비스 체제로 전환 가능합니다. 32비트로 성공하면 64비트 구성요소들(아파치, PHP, Visual C++ 2015 재배포 가능 패키지)는 삭제하면 되겠죠?
------------------------------
2016. 12. 08. 추가.
PHP 7.1.0 도 같은 방식으로 설치하여 정상작동 확인했습니다.(아래 스크린 샷 참조)
2017. 11. 23. 추가.
PHP 7.2.12 까지 설치 확인.
2019. 02. 07. 추가.
PHP 7.3(7.3.2) 까지 설치 확인.
2019. 05. 16. 추가.
PHP 7.3.5 까지 설치 확인. - 게터리 님 제보.
2019. 06. 01. 추가.
PHP 7.3.6 까지 설치 확인.
2019. 07. 24. 추가.
PHP 7.3.7 까지 설치 확인. - thanks 님 제보.
2019. 08. 06. 추가.
PHP 7.3.8 까지 설치 확인. - 오뎅전쟁 님 제보.
2019. 08. 31. 추가.
PHP 7.3.9 까지 설치 확인. - 켈리 님 제보.
2019. 10. 30. 추가.
PHP 7.3.11 까지 설치 확인. - jenny 님 제보.
2019. 12. 06. 추가.
PHP 7.4 까지 설치 확인. - php 님 제보.
2020. 01. 14. 추가.
PHP 7.4.1 까지 설치 확인. - 켈리 님 제보.
2020. 02. 12. 추가.
PHP 7.4.2 까지 설치 확인. - zxcas57 님 제보.
2020. 03. 31. 추가.
PHP 7.4.4 까지 설치 확인. - 감사합니다 님 제보.
2020. 07. 25. 추가.
PHP 7.4.8 까지 설치 확인. - 감사합니다 님 제보.
2020. 08. 25. 추가.
PHP 7.4.9 까지 설치 확인. - 감사해요 님 제보.
2021. 03. 27. 추가.
PHP 7.4.16 까지 설치 확인. - 프레이 님 제보.
2021. 05. 23. 추가.
PHP 8.0 까지 설치 확인. - 허접 님 제보.
2022. 01. 23. 추가.
PHP 8.0.12 까지 설치 확인 - 리사 님 제보.
PHP 8.1.2 까지 설치 확인 - Jjung 님 제보.
----------------------------------------------------
[우분투 18.04 데스크톱] LAMP : PHP 7.2 설치과정 정리
[우분투 18.04 데스크톱] LEMP : PHP 7.2 설치 과정 정리
▲ 한국의 문화유산 : 캐논 일렉기타 연주 (연주자 본인 유튜브 채널에서 퍼옴ㅋ)
'도움이 되는 Tip > PC' 카테고리의 다른 글
[윈도우10 64bit] APM MySQL 5.7 설치과정 정리 (221) | 2016.11.12 |
---|---|
[윈도우10 64bit] APM PHP 7.0 설치과정 정리(PHP 8.0 주의점 추가) (147) | 2016.11.11 |
Dlink 디링크 DIR-615 공유기 포트포워딩(가상서버) 설정 방법 (7) | 2016.10.27 |
마우스 우클릭/드래그 방지 해제방법 (4) | 2016.10.11 |
②글주소 복사 ▶ Ctrl+Shift+N(시크릿탭) ▶ 붙여넣고 엔터
① 또는 ②의 방법으로 본문을 볼 수 있습니다.
(Please turn off AdBlock Plug-in.)
p.s. 광고에도 여러분이 관심을 가질만한 정보가 녹아있을 수 있습니다.
( ※ 내가 애드블록 해제를 권유하는 이유 )
Windows 10 pro x64 PHP 7.4.1 설치 확인했어요!
안녕하세요. 상세한 설명 덕분에 APM설치 간단하게 했네요 감사합니다.
PHP Version 7.4.2 잘되네요~~
zxcas57 // 제보 감사합니다. 본문 하단에 추가해 놓을게요.
사이트에 있는 대로 Apache24, php7, phpmyadmin
을 차례대로 진행해 봤지만
로그인을 풀었을 때 phpmyadmin이 실행되지 않습니다.
mysql의 서비스 등록은 되어있지만 php와 연동이 되지 않는 것 같아
방법을 찾습니다.
kkanpe // php가 mysql의 버전을 지원하는지 알아보시기 바랍니다.
php7.4.3 설치했습니다.
잘 따라 가던중 phpinfo가 소스 그대로 표시됩니다.
왜그런지 알수 있을까요?
donkey // 파일 인코딩을 UTF-8로 지정했는지 체크해보세요. 본문대로 따랐을 때 의심할만한 부분은 그 곳밖에 없네요.
localhost/phpinfo.php 이거 말고
localhost만 쳤을때도 phpinfo.php의 내용이 나오는 방법은 없을까요?
phpinfo.php 파일명을 index.php로 바꾸면 되겠지요.
php7.4.4 확인했습니다
제보 감사합니다. 시간 날 때 본문에 반영하겠습니다.
php 설치 후에 정보확인에서 API Extensions은 no value가 맞나요??
네. 필요한 익스텐션은 직접 봉인 해제해서 쓰셔야 되고, mysql 관련 익스텐션 추가하는 것는 mysql 설치방법 설명 글에 적어놨었습니다.
php 7.4.8 도 잘 설치되고 작동 되네요 감사합니다.
제보 감사합니다! 본문에 반영할게요.
php 7.4.8 정상적으로 설치되었습니다. 단 마지막에 phpinfo.php가 인터넷 브라우저에서 열리지 않고 계속 로컬 폴더에 다운로드가 되는 문제가 발생했습니다. 그래서 아파치 httpd.conf 파일에 AddHandler application/x-httdp-php .php을 막았더니 정상 phpinfo.php가 정상 출력 되었습니다. AddHandler의 역할이 뭔지 알 수 있을까요?
x-httdp-php가 아니라 x-httpd-php인 것 같은데요? 구글링 해보니까 html 파일 내의 php코드를 다루는 도구인 것 같은데, 그래서 빠지면 안되는 구성요소인 것 같습니다.
네 계속 찾다 보니까 오타였습니다. ㅎㅎ 오타라고 정정하려고 왔더니 벌써 댓글 달아주셨네요.
php 7.4.9 설치 됩니다 확인했습니다~
감사해요~!
결과 알려주셔서 감사합니다. 본문에 적어둘게요.
아주 잘됩니다- 최고!
댓글 감사합니다!
Configuration File (php.ini) Path 값이 no value로 나오는데 상관없을까요..?
상관 없지 않을 것 같습니다만... 돌아가면 그냥 쓰다가 문제가 생기면 고치는 것도 고려해볼만 합니다.ㅋ
감사합니다ㅎㅎ
PHP8확인
PHP8에서는 httpd.conf에서 아래처럼 해야함(php버전 안씀)
LoadModule php_module "d:\apm\PHP8\php8apache2_4.dll"
선구자십니다! 아파치에서 모듈 이름을 바꿨군요. 덕분에 알게 됐습니다. 본문에 반영할게요.
우와 윈도우 아파치에선 php8이 원래 안되는가 했는데 좋은 정보 얻고 갑니다!
8버전에서 진행중인데 위와 같이 진행하면 항상 httpd -k start 부분에서 웹서버가 계속 켜있지 않고 중간에 종료되는데 문제가 뭘까요?
개별 케이스 해결은 구글링으로 하세요.
(아니면 제 시간을 사세요.)
7.4.16 도 확인했습니다.
이거 보면서 도움받는데 이거라도 남기는게 도리인거 같아서 남겨요.
감사합니다. 본문 하단에 적어놓을게요.
php8.0 버전도 히로님이 말씀 해주신것 처럼 하였더니 잘 돌아 갑니다
감사합니다. 피드백 내용, 본문 하단에 적어놨습니다.
Loaded Configuration File 값이 none나오는데 어떻게 해결하나요?
여러번 다시설치 해보고 오타있는지도 봤는데 잘못설정한게 없는데 계속 none으로 나옵니다ㅠㅠㅠ
당장 답해드릴 수 없을 것 같습니다.
일단은 구글링하시고, 구축한 프로그램들 버전 적어주시면 시간이 되는대로 해보고 본문을 보강할게요.
구글링해서 찾아본 내용들을 따라해보았는데 해결 못했습니다 ㅠㅠㅠ
apache2.4.51
php8.0.12
버전들을 사용했습니다
64bit입니다ㅠㅠ
apache 2.4.52
php 8.1.1
64bit
마지막 제보까지 해서 잘 되었습니다~ 자세한 글 감사합니다!
피드백 감사합니다! 본문에 추가해 놓을게요.
도움 많이받고 있습니다^^
window10 php8.1.2 확인했습니다!
알려주셔서 감사합니다! 본문에 추가해 놓을게요.