윈도우10에 APM(아파치 + PHP + MySql)을 설치 해보도록 하겠습니다.
현재 저의 PC는 MySQL이 이미 설치되어 있는 상황입니다.
(MySQL 설치 방법은 하단 링크를 통해 설명드리도록 하겠습니다.)
이 방법은 이미 MySQL이 설치되어 있는 상황에서 APM을 설치하는 방법이므로 참고하시길 바랍니다.
1. Visual C++ 재배포 가능 패키지를 설치해야 합니다. (대부분 설치되어 있긴 할겁니다.)
https://www.microsoft.com/ko-KR/download/details.aspx?id=48145
2. Apache를 설치 합니다.
링크 클릭 후, httpd-2.4.43-win64-vs16.zip 파일을 다운로드 합니다.
https://www.apachelounge.com/download/
만약 32bit 컴퓨터 사용중이시라면 httpd-2.4.43-win32-vs16.zip 파일을 다운로드 하시면 됩니다.
3. PHP를 설치 합니다.
링크 클릭 후, VC15 x64 Thread Safe – zip 파일을 다운로드 합니다.
https://windows.php.net/download/
이미지 참고하셔서 다른 파일 받지 않도록 주의!
4. 2번에서 받은 압축파일을 원하는 드라이브에 압축해제합니다.
전 E: 드라이브에 압축해제하도록 하겠습니다.
압축을 푼 후 Apache24 폴더를 "E:\apache24" (각자 환경에 맞게)에 둡니다.
(Apache24폴더를 제외한 ReadMe.txt 및 다른건 참고만 하시고 지우셔도 됩니다. Apache24폴더만 필요합니다.)
Apache24폴더 내에 있는 conf 폴더를 들어갑니다.
httpd.conf 파일을 VScode에서 열겠습니다.
(httpd.conf 파일을 VScode에다가 dragp&drop 하시면 됩니다.)
httpd( = Hyper Text Transfer Protocol Demon)란? 웹문서를 주고 받기 위한 규약 정도로 알고 넘어가시면 됩니다.
참고로 꼭 VScode일 필요는 없고, 다른 편집기(ex - Atom 등등)로도 가능합니다.
VScode 설치법은 하단 링크를 참조하세요.
https://developer-p.tistory.com/entry/VScode-Visual-Studio-Code-%EC%84%A4%EC%B9%98
5. conf파일 코드 수정을 해줘야 합니다.
파일을 보시면 눈치 채신분들도 있겠지만, 현재 코드내에서 #은 아무런 영향을 끼치지 않는 주석처리입니다.
37째줄. 서버 루트 디렉토리가 기본적으론 "c:/Apache24"로 설정되어 있습니다.
전 E: 에다가 설치해줬기 때문에, E: 로 수정해주도록 하겠습니다.
C: 에다가 까셨다면 바꾸시지 않고 패스하시면 됩니다.
(39째줄. 참고로, 39번째 줄 코드의 의미 :
서버 루트 디렉토리는 앞으로 이 코드 내에서 ${SRVROOT} 라는 스트링으로 대체해서 쓰겠다는 뜻입니다.)
59째줄. 웹서버는 다음과 같은 주소(12.34.56.78)를 갖고 있습니다.
뒤에 :80 나와있는게 포트번호 입니다. 웹문서를 주고 받기 위한 규약은 이 80포트를 통해 주고 받습니다.
80포트가 기본적으로 웹에서 쓰는 기본포트입니다. (0 ~ 65535 포트번호까지 있습니다.)
218째줄. 이 웹서버를 관리하는 관리자의 이메일 주소를 입력하면 됩니다.
즉, 저희의 이메일 주소로 수정하면 됩니다. naver, google 등등.
227째줄. 저희는 서버 도메인이 없기 때문에 우선 #제거후, localhost로 바꾸겠습니다.
localhost는 자기 자신을 의미합니다.
6. cmd(명령 프롬프트)를 반드시 관리자 권한으로 실행합니다.
왼쪽 밑 검색창에 cmd 입력 후, 우클릭을 통해 관리자 권한으로 실행하면 됩니다.
e: 드라이브로 간 뒤 → Apache24 폴더로 가고 → bin 폴더로 간 뒤 → dir 입력.
(만약 e:드라이브가 아닌, c:드라이브에 설치했다면 맨 처음에 e: 대신 c:를 입력하셔야 합니다.)
httpd -k install 입력.
잠시후 성공적으로 설치되었다고 뜹니다.
참고로 보안허용? 어떤 창이 하나 뜨는데, 그냥 허용해주시면 됩니다.
하단에 X표시들은 시작하기 전에 반드시 해결해줘야 한다는 얘기인데 우선 무시하시면 됩니다.
net start apache2.4 입력.
잠시후 서비스가 잘 시작됩니다.
이제 크롬창에다가 localhost 라고 입력하면 작동하는 모습을 볼 수 있습니다.
이 글자는 어디서 왔을까요?
바로 Apache24폴더내에 있는 htdocs가 웹문서들에 대한 루트디렉토리입니다.
VScode에서 열어보니 크롬창에 떠있는 모습과 같은 내용이 적혀 있습니다.
여기까지, 웹서버 설치 완료
여기부터, PHP 설치 시작
7. 제대로 입력했음에도 불구하고 바뀌는게 없습니다.
잘못됐나 싶지만 사실 당연한 겁니다.
그 이유는, 아직 저희가 php 설치는 안해줬죠?
E: 드라이브에 PHP폴더를 만든 뒤, 거기에 3번에서 받았던 압축파일을 해제하도록 하겠습니다.
여러가지 파일중 php.ini-development & php.ini-production 파일을 찾습니다.
확장자명이 이상함을 눈치채셨나요?
형광칠된 개발자용 파일명을 php.ini로 수정합니다.
php의 ini파일도 마찬가지로 위에서 봤던 conf파일이라고 생각하시면 됩니다.
production용은 냅둡니다.
8. VScode를 통해 파일을 열어봅시다.
아까 봤던 #이랑은 다르게 ; (세미콜론)이 있습니다. 마찬가지로 주석임을 알 수 있죠.
463번째 줄. 저희는 에러는 전부 보고가 되면서 + 공지사항은 제외가 되면 좋겠습니다.
따라서 E_ALL & ~E_NOTICE로 수정해주도록 하겠습니다.
187번째 줄. off를 on으로 수정 합니다.
<? php
phpinfo();
?>
원래 이렇게 php라고 반드시 써줘야 하는데, 어차피 php 이외의 다른 언어는 꺾쇠와 ?를 쓰지 않습니다. (220814 수정 : php와 xml이 사용합니다. 명시해주는 게 좋습니다. https://t.ly/Iagi)
그래서 짧게 해도(php라고 쓰지 않아도) 인정을 해주겠다는 뜻입니다.
extension이라고 검색(ctrl+F)하시면 중요한 디렉토리가 나옵니다.
나중에 저희가 PHP > ext > php_mysqli.dll 파일을 사용해야 하는데,
이 extension 디렉토리가 어디있는지 명시를 해줘야 합니다.
주석처리를 반드시 지우고, ext폴더 위치를 명시해주면 됩니다.
(C: 드라이브에 까셨다면 당연히 C:로 바꿔줘야겠죠? 이젠 아시리라 믿습니다.)
922째 줄. 주석처리를 삭제합니다.
mysql을 연동하는데 필요한 함수들을 mysqli에서 제공중입니다.
9. 저흰 아직 PHP랑 아파치랑 연결을 안해줬습니다. 아파치랑 연결하는 작업이 필요합니다.
httpd.conf에 php모듈을 로드해줘야 합니다.
PHPIniDir "E:/php"
LoadModule php7_module "E:/php/php7apache2_4.dll"
AddType application/x-httpd-php .htm .html .php
위 문장(더보기 클릭)을 httpd.conf 파일 최하단에 복붙해줍니다.
(E:를 C:로 바꾸셔야 하는 분들도 있겠죠?)
540번째 줄은 .php파일 뿐만 아니라, .htm 이나 .html파일에서도 php문법을 인식을 하라는 의미입니다.
10. 웹서버를 다시 시작해줍니다.
cmd창에 httpd -k restart 입력합니다.
그 후 다시 아까 크롬창에 떴던 It works창을 새로고침하면...
짜잔! php코드(phpinfo함수)가 잘 작동하는 모습을 볼 수 있습니다.
이상으로 APM설치에 대해 마무리하도록 하겠습니다.
꽤 복잡했던 거 같습니다. 여기까지 따라오시느라 고생하셨습니다!
PHP 설정 후 정상 작동 여부를 확인하기 위해
아래 링크글을 참조하시길 바랍니다.
https://developer-p.tistory.com/38
MySQL 설치하는 방법은 아래 링크글을 참조하시길 바랍니다.
하단 링크에선 MySQL셋팅하는 법에 대해서 설명하도록 하겠습니다.
https://developer-p.tistory.com/60
최근댓글