APM

2018-12-24

들어가며

Windows에서 Apache + PHP + MySQL MariaDB 연동은 언제나 귀찮다. 시중에 돌아다니는 APMSetup, AutoSet, XAMPP 등을 그냥 깔기에도 업그레이드 등이 귀찮아서 좀 아쉽다. 그래서 항상 새로 하고 그때마다 까먹어서 새로 찾아보는 일이 많아 내가 보기 위해 정리해 놓는다. 아마 다른 블로그들도 비슷한 이유로 정리해 놓았을 테지만 언제나 내 것이 더 보기 편한 법이다. 나에게 주는 크리스마스 선물 정도로 보면 되겠다.

현시점에서 최신 페이지와 버전을 적어 놓았지만, 나중에는 당연히 갱신될 것이다. Latest Stable Release를 사용하자.

Apache

Download

http://www.apachelounge.com/download

Apache 2.4.37 Win64 (httpd-2.4.37-win64-VC15.zip) 다운로드

Configure

C:\httpd-2.4.37-win64-VC15\Apache24\conf\httpd.conf

해당 줄을 찾아서 아래와 같이 변경

Define SRVROOT "C:/httpd-2.4.37-win64-VC15/Apache24"
LoadModule info_module modules/mod_info.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
ServerName www.example.com:80
DocumentRoot "C:/WEB"
<Directory "C:/WEB">
AllowOverride All
#CustomLog "logs/access.log" common
CustomLog "logs/access.log" combined
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-info.conf
Include conf/extra/httpd-default.conf
Include conf/extra/httpd-ssl.conf

마지막에 아래 내용 추가

PHPIniDir "C:/php-7.3.0-Win32-VC15-x64"
LoadModule php7_module "C:/php-7.3.0-Win32-VC15-x64/php7apache2_4.dll"
LoadFile "C:/php-7.3.0-Win32-VC15-x64/libssh2.dll"
AddType application/x-httpd-php .html .php

C:\httpd-2.4.37-win64-VC15\Apache24\conf\extra\httpd-default.conf

해당 줄을 찾아서 아래와 같이 변경

ServerSignature On

C:\httpd-2.4.37-win64-VC15\Apache24\conf\extra\httpd-info.conf

해당 줄을 찾아서 아래와 같이 변경

Require ip 127 ::1
Require ip 127 ::1

C:\httpd-2.4.37-win64-VC15\Apache24\conf\extra\httpd-ssl.conf

해당 줄을 찾아서 아래와 같이 변경

DocumentRoot "C:/WEB"

Execute

"C:\httpd-2.4.37-win64-VC15\Apache24\bin\httpd.exe" -k install
"C:\httpd-2.4.37-win64-VC15\Apache24\bin\httpd.exe" -k start

PHP

Download

http://windows.php.net/download

VC15 x64 Thread Safe (php-7.3.0-Win32-VC15-x64.zip) 다운로드

Configure

C:\php-7.3.0-Win32-VC15-x64\php.ini

php.ini-development를 해당 파일로 복사하고 해당 줄을 찾아서 아래와 같이 변경

extension_dir = "C:/php-7.3.0-Win32-VC15-x64/ext"
extension=curl
extension=mbstring
extension=mysqli
extension=openssl

Execute

"C:\php-7.3.0-Win32-VC15-x64\php.exe" --version

MariaDB

Download

http://downloads.mariadb.org/mariadb/10.3.11

Windows x86_64 ZIP file (mariadb-10.3.11-winx64.zip) 다운로드

Configure

C:\mariadb-10.3.11-winx64\data\my.ini

해당 섹션을 찾아서 아래 내용 추가

[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
[client]
default-character-set=utf8mb4
[mysqldump]
default-character-set=utf8mb4

Execute

"C:\mariadb-10.3.11-winx64\bin\mysql_install_db.exe" --datadir="C:\mariadb-10.3.11-winx64\data" --service=MariaDB --password=mariadb
sc start MariaDB
"C:\mariadb-10.3.11-winx64\bin\mysql.exe" --user=root --password=mariadb

(2019-09-30 추가) MySQL 8.0

Download

http://dev.mysql.com/downloads/mysql

Windows (x86, 64-bit), ZIP Archive (mysql-8.0.17-winx64.zip) 다운로드

Configure

없음

Execute

"C:\mysql-8.0.17-winx64\bin\mysqld.exe" --initialize-insecure --console
"C:\mysql-8.0.17-winx64\bin\mysqld.exe" --install
sc start MySQL
"C:\mysql-8.0.17-winx64\bin\mysql.exe" --user=root --skip-password

(2019-10-02 추가) MySQL 5.7

Download

http://dev.mysql.com/downloads/mysql

Windows (x86, 64-bit), ZIP Archive (mysql-5.7.27-winx64.zip) 다운로드

Configure

서비스 설치 후 실행 전에 아래 레지스트리 실행

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL]
"ImagePath"=hex(2):22,00,43,00,3a,00,5c,00,6d,00,79,00,73,00,71,00,6c,00,2d,00,\
  35,00,2e,00,37,00,2e,00,32,00,37,00,2d,00,77,00,69,00,6e,00,78,00,36,00,34,\
  00,5c,00,62,00,69,00,6e,00,5c,00,6d,00,79,00,73,00,71,00,6c,00,64,00,22,00,\
  20,00,4d,00,79,00,53,00,51,00,4c,00,00,00

Execute

"C:\mysql-5.7.27-winx64\bin\mysqld.exe" --initialize-insecure --console
"C:\mysql-5.7.27-winx64\bin\mysqld.exe" --install
sc start MySQL
"C:\mysql-5.7.27-winx64\bin\mysql.exe" --user=root --skip-password

돌아가기