Windows에서 Apache + PHP + MySQL MariaDB 연동은 언제나 귀찮다. 시중에 돌아다니는 APMSetup, AutoSet, XAMPP 등을 그냥 깔기에도 업그레이드 등이 귀찮아서 좀 아쉽다. 그래서 항상 새로 하고 그때마다 까먹어서 새로 찾아보는 일이 많아 내가 보기 위해 정리해 놓는다. 아마 다른 블로그들도 비슷한 이유로 정리해 놓았을 테지만 언제나 내 것이 더 보기 편한 법이다. 나에게 주는 크리스마스 선물 정도로 보면 되겠다.
현시점에서 최신 페이지와 버전을 적어 놓았지만, 나중에는 당연히 갱신될 것이다. Latest Stable Release를 사용하자.
http://www.apachelounge.com/download
Apache 2.4.37 Win64 (httpd-2.4.37-win64-VC15.zip
) 다운로드
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"
"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
http://windows.php.net/download
VC15 x64 Thread Safe (php-7.3.0-Win32-VC15-x64.zip
) 다운로드
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
"C:\php-7.3.0-Win32-VC15-x64\php.exe" --version
http://downloads.mariadb.org/mariadb/10.3.11
Windows x86_64 ZIP file (mariadb-10.3.11-winx64.zip
) 다운로드
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
"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
http://dev.mysql.com/downloads/mysql
Windows (x86, 64-bit), ZIP Archive (mysql-8.0.17-winx64.zip
) 다운로드
없음
"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
http://dev.mysql.com/downloads/mysql
Windows (x86, 64-bit), ZIP Archive (mysql-5.7.27-winx64.zip
) 다운로드
서비스 설치 후 실행 전에 아래 레지스트리 실행
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
"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