반응형
윈도우에 PHP개발 환경을 구축할 경우 보통 WAMP나 Autoset과 같은 프로그램을 설치하여 웹서버 환경을 구축한 후 개발하게 된다. 하지만 개발자라면 APM의 구조를 이해하고 개별적으로 관리할 수 있어야 한다. 물론 리눅스에 개발환경을 구축하는 것이 가장 좋은 방법이기는 하지만, 업무상 윈도우를 사용할 일이 많은 경우 이렇게 라도 해서 개발환경을 이해하고, 궁극적으로는 서버의 환경을 이해하는 것이 개발자로서 많은 도움이 될 것이다.
이 번에는 윈도우에 PHP와 MySQL 그리고 Apache웹서버를 직접 설치하는 방법을 설명한다.

 

1. PHP, MySQL, Apache 최신버전을 다운로드 받는다.

(1) PHP : http://windows.php.net/download/
2017년 5월 5일 현재 버전은 PHP 7.1 (7.1.4)이다. 물론 자신의 개발 환경이 7.x가 아니고 5.6또는 그 이하라면 해당 버전을 다운로드 받으면 된다.
이번에는 64bit용인 'VC14 x64 Thread Safe (2017-Apr-12 02:21:00)-Zip'(23.17MB)을 다운받아 사용한다.
(2) MySQL : https://dev.mysql.com/downloads/windows/installer/
사이트에 접속하여 'Windows (x86, 32-bit), MSI Installer'(18.5MB)를 다운로드 받는다. 2017년5월5일 현재 버전은 5.7.18이다.
'Download'버튼을 클릭하면 로그인하거나 회원가입을 하라는 메시지를 볼 수 있으나 하단의 'No thanks, just start my download.'를 클릭하면 회원이 아니어도 다운로드 받을 수 있다.
(3) Apache : https://www.apachelounge.com/download/
위 링크에 접속하여 'httpd-2.4.25-win64-VC14.zip'(14.4MB)를 다운로드 받는다.

 

2. PHP 설치

(1) 압축풀기
압축은 원하는 곳에 풀어주면 된다. 여기서는 C의 root에 압축을 풀었다는 가정하에 설명한다.
(2) PATH 추가하기
'고급 시스템  설정 보기'를 검색하여 실행하면 '시스템 속성'창이 뜬다. '고급'텝에서 '환경 변수(N)...'버튼을 클릭하고, 환경변수 창이 뜨면 상단의 '사용자 변수'의 '새로 만들기(N)'버튼을 클릭한다. 여기서 변수이름(임의의 이름 : 'PHP')과 변수 값(경로 : 'c:\php')을 입력하고 확인버튼을 누른다. 혹은 다른 변수에 편집을 통해 변수 값만 추가해 줘도 된다. 추가할때는 세미콜론(;)으로 구분해 준다.
다음으로 아래쪽 '시스템 변수(S)'창을 스크롤 하면서 Path가 있는 부분을 찾아 선택하고, '편집'버튼을 클릭한다. 환경변수 편집창이 뜨면, 창 우측의 '새로 만들기(N)' 버튼을 클릭한다. 여기에 PHP경로를 입력하고 확인을 누른다. (예)c:\php
이제 먼저 떠있던 창의 확인 버튼을 하나씩 클릭하면 설정이 끝난다.

(3) CMD 창으로 확인하기
CMD창을 뛰운 후 'php -ver'을 실행하여 정장적으로 실행되는지를 확인한다.
만일 정상적으로 실행되지 않고 에러가 날 경우는 microsoft.com에 접속하여, '2015 재배포 가능 패키지'를 다운받아 설치한다.
이때 '2013 재배포 가능 패키지'도 함께 설치하면 나중에 워크벤치를 설치할때 편하다. 2013재배포 패키지가 없으면 워크벤치가 설치되지 않기 때문이다. 만일 설치를 잊고 지나쳤어도 상관은 없다 워크벤치 설치시 설치가 되어 있지 않다면, 설치를 할 것인지 물어보기 때문이다.

 

3. MySQL 설치

앞서 다운받은 'mysql-installer-web-community-5.7.18.1.msi'를 실행한다.
(1) License Agreement를 체크하고 'Next>'클릭.
(2) Custom을 선택하고  'Next>'클릭.
(3) MySQL Server, MySQL Workbench를 선택하고 'Next>'클릭.
(4) 'Execute'클릭 - 다운로드 받는데 시간이 좀 걸린다. 다운로드가 끝나면 자동으로 설치가 되고, 설치가 완료되면 'Next>'버튼이 활성화 된다. 'Next>'클릭.
(5) Product Configuration에서 'Next>'클릭.
(6) Type and Networking창에서 'Standalone MySQL Server / Classic MySQL Replication' 선택하고 'Next>'클릭하면 Server Configuration Type화면이 나오는데 기본 설정데로 하고 'Next>'클릭.
(7) 비밀번호 입력 후 'Next>'클릭. 이후 과정은 모두 'Next>'를 클릭한다.
(8) 마지막 Apply Configuration에서  'Execute'클릭하면 자동으로 하나씩 설정한다.  설정이 끝나면 'Finish'버튼을 클릭한다.
(9) 다음 Product Configuration에서 'Next>'클릭 후 'Finish'버튼을 다시 클릭한다.
* 설치 과정에서 'Check Requirements'에 Microsoft Visual C++ 2013 Runtime이 필요하다고 나오면 'Execute'를 클릭하여 설치한다. -  'Next>'를 클릭하지 말고 반드시 'Execute'를 클릭한다.
(10) 설치가 끝나면 시작메뉴에 MySQL관련 메뉴가 보인다. 정상동작을 확인하기 위하여, 메뉴 중 'MySQL 5.7 Command Line Client'를 실행한다.
(11) 비밀번호를 입력하면 프롬프트가 'mysql>'로 바뀐다. 여기에 'show databases;'를 입력하고 현재 DB의 상태를 확인하다.

 

4. Apache 설치

다운 받은 압축파일을 풀어 Apache24폴더만 원하는 곳에 복사한다. 여기서는 C의 root에 복사한 것으로 한다.
[httpd.conf 파일 수정]
C:/Apache24/conf/httpd.conf 파일을 에디터에서 연다.
(1) ServerRoot경로 수정
37번째 라인에 ServerRoot "c:/Apache24"의 경로 부분을 아파치를 복사한 경로로 수정한다. 문론 여기서는 c의 root에 복사했음으로 수정하지 않는다.
(2) Port 수정
포트는 반듯이 변경해야 하는 것은 아니지만, 웹브라우저가 80포트를 기본으로 지원함으로 80이외의 포트로 설정하면 매번 포트 번호를 입력해야 하는 불편함이 있다.
58번째 라인의 Listen 80 에서 원하는 포트 번호를 입력하면 된다. default는 80임으로 여기서는 수정하지 않기로 한다.
(3) ServerName 수정
221번째 라인 #ServerName www.example.com:80의 #을 제거하고 ServerName localhost:80 혹은 ServerName 127.0.0.1:80으로 수정한다. 마직막의 80은 포트번호로 (2)번에서 설정한 포트번호와 동일하게 수정해 주면 된다.
(4) 웹문서 저장위치 수정
245번째 라인 DocumentRoot "c:/Apache24/htdocs"의 큰따운표 안의 경로를 원하는 경로로 수정한다. 그리고 바로아래 246번째 라인 <Directory "c:/Apache24/htdocs">의 경로도 동일하게 수정한다.
(5) Path추가
윈도우 검색을 통해 "시스템 환경 변수 편집"을 실행하고, 고급탭의 '환경 변수(N)' 버튼을 클릭한다.
환경변수 창에서 '시스템 변수(S)'의 Path항목을 더블클릭한다. 환경 변수 편집 창에서 '새로 만들기(N)'버튼을 클릭하고 다음 경로를 입력한다. c:\Apache24\bin
(6) CMD를 관리자 권한으로 실행하고 명령 프롬프트에 다음과 같이 입력하고 실행한다. httpd -k install
설치가 끝나고 windows 보안 경고 창이 뜬다. '액세스 허용(A)'버튼을 클릭한다.
다은으로 httpd -k start라고 입력하고 아파치 서비스를 시작한다.
(7) 동작확인
웹문서를 작성하여 (4)번에서 설정한 웹문서 저장 위치에 저장하고 웹브라우저에서 localhost혹은 127.0.0.1를 입력하여 정상동작을 확인한다.
바로 실행하면 아파치에 기본적으로 설치되어 있는 index.php가 실행되며, 브라우저 화면에 'It works!'라고 뜬다.

반응형
블로그 이미지

DeveloperN

개발자 n의 개발 이야기(draft)

,
반응형

cafe24에서는 더 이상 WebMysql을 지원하지 않는다.

이제는 호스팅 가입자가 직접 접속할 수 있는 방법을 적용해야만 한다.

다행이 cafe24에서는 그 대표적인 방법 3가지를 제시하고 있다.

다음은 cafe24에서 제공하는 FAQ 링크이다.

 

반응형
블로그 이미지

DeveloperN

개발자 n의 개발 이야기(draft)

,
반응형

서비스 중에는 패스워드를 보안상 문제가 없도록 설정해야 하지만 개발용도로 로컬에 설치해서 사용할 경우 패스워드가 긴 경우 불편하다.

이런 경우 패스워드 정책을 변경하고, 패스워드를 재설정하는 방법을 정리한다.

먼저 mysql 프롬프트로 이동한다.

 # mysql -u root mysql

현재 패스워드 정책을 확인한다.

mysql> SHOW VARIABLES LIKE 'validate_password%';

+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_check_user_name    | OFF    |
| validate_password_dictionary_file    |        |
| validate_password_length             | 8      |
| validate_password_mixed_case_count   | 1      |
| validate_password_number_count       | 1      |
| validate_password_policy             | MEDIUM |
| validate_password_special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.05 sec)

보통 위와 같이 설정되어 있다. 내용을 보면 길이는 8 이상, 특수문자, 대소문자 등이 1글자 이상 있어야 하는 것으로 되어 있다.

이를 변경하려면 SET GLOBAL 명령을 사용한다.

mysql> SET GLOBAL validate_password_policy=LOW;
--------------
SET GLOBAL validate_password_policy=LOW
--------------

Query OK, 0 rows affected (0.00 sec)

mysql> SET GLOBAL validate_password_length = 4;
Query OK, 0 rows affected (0.00 sec)

mysql> SET GLOBAL validate_password_mixed_case_count = 0;
Query OK, 0 rows affected (0.00 sec)

mysql>  SET GLOBAL validate_password_number_count = 0;
Query OK, 0 rows affected (0.00 sec)

mysql>   SET GLOBAL validate_password_special_char_count = 0;
Query OK, 0 rows affected (0.00 sec)

설정이 완료 되었으면 내용을 다시한번 확인해 본다.

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_check_user_name    | OFF   |
| validate_password_dictionary_file    |       |
| validate_password_length             | 4     |
| validate_password_mixed_case_count   | 0     |
| validate_password_number_count       | 0     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 0     |
+--------------------------------------+-------+
7 rows in set (0.01 sec)

이제 아무런 제약없이 4개의 문자만으로 설정이 가능하다.

비밀번호 재 설정은 다음과 같다.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '1234';
Query OK, 0 rows affected (0.00 sec)

 

 

반응형
블로그 이미지

DeveloperN

개발자 n의 개발 이야기(draft)

,
반응형

APM설치 두번째로 MySQL 설치과정을 정리한다.

1. MySQL 설치 전 system을 업데이트 한다.

$ sudo apt update && sudo apt upgrade

2. MySQL 설치

$ sudo apt install mysql-server

3. 보안설정

$ sudo mysql_secure_installation

4. 설치 확인

$ sudo mysql -v
Enter the password:
.
.
.
mysql> SELECT VERSION();
--------------
select version()
--------------

+-------------------------+
| version()               |
+-------------------------+
| 5.7.27-0ubuntu0.18.04.1 |
+-------------------------+
1 row in set (0.00 sec)

mysql> exit
Buy

혹은

$ sudo mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 5.7.27-0ubuntu0.18.04.1 (Ubuntu)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

mysql> exit
Bye

동작하고 있다는 것만 확인하면 되기 때문에 어떤 방법으로든 상관없다.

이것으로 MySQL 설치의 확인을 끝낸다.

Server에 APM설치 02 - MySQL
Server에 APM설치 02 - MySQL

반응형
블로그 이미지

DeveloperN

개발자 n의 개발 이야기(draft)

,