본문 바로가기
  • 실행력이 모든걸 결정한다
DB/DB Settings

서버 호스팅 구매없이 DB외부접근 허용하기

by 김코더 김주역 2020. 8. 4.
반응형

필자가 몇 십 시간 삽을 팠던 내용이지만 여러분들은 이걸 보고 한 번 만에 성공했으면 좋겠다 

 

Cafe24에서 웹호스팅서비스의 관리 주체는 Cafe24지만, (가상)서버 호스팅은 관리자 계정이 제공되어 직접적인 설정과 서비스가 가능하다.

 

가상서버 호스팅은 윈도우 기준 첫 설치비 22000원, 월 사용료 16500원이다.

 

먼저, 여기서 비용 계산에 대해 헷갈릴만한 사항을 설명하고자 한다.

Q 처음에는 설치비와 월 이용료를 같이 내게 되는데, 몇 달만 관리하다가 중단하고 다시 이용을 하게 될 때는 월이용료만 그대로 다시 내면 되는것인가?

A 6월 15일 만료가 된 후 8월 15일에 다시 서비스를 시작한다면 6월16일~8월15일까지의 요금이 추가로 결제되어야한다.

 

음... 몇달만 이용하고 내년에 다시 시작하려고 했던 나에게는 좋지 않은 소식이었다.

이후 나는 양심없지만(?) 이걸 무료로 하는 방법이 없을까? 생각을 하고 구글링을 했다.

답은 찾았다..

 

관리자 권한으로 DB생성도 가능하고 외부 접근 권한도 부여 할 수 있게 되었다. 그것도 무료로!!!!

단, 중요한 조건이 하나 있다.

본인의 컴퓨터에서 서버를 켜고 있는 동안 가능하고, 24시간 관리를 원한다면 서버 호스팅을 구매 해야한다

더 저렴하게 이러한 기능을 제공하는 해외 업체를 찾는 방법도 있겠지만 여기선 다루지않겠다. 

 

1. APM setup 설치

설치법은 구글에 apm setup 설치만 검색하면 쉽게 안내받을 수 있고

APM은 A=>Apache, P=>PHP, M=>Mysql 각 첫문자를 따온것이다. 

말 그대로 이 셋이 함께 설치된다.

 

2. phpMyAdmin 로그인

주소창에 localhost/myadmin/index.php를 입력하면 컴퓨터의 로컬호스트에 해당하는 phpMyAdmin 사이트가 뜬다. 

 

 

 

Username에 root, Password에 apmsetup을 입력한 후 Go를 누르자.

 

혹시나 하니 암호 변경도 해두면 좋다.

 

여기서는 외부 접근을 위한 세팅만 다룰것이기 때문에 데이터베이스/테이블 생성에 대한 설명은 생략하겠다.

 

3. 방화벽 설정

제어판 -> Windows 방화벽 -> 좌측에 있는 고급설정에 들어가면

고급 보안이 포함된 Windows Defender 방화벽 창이 뜨게 되는데

인바운드 규칙 -> 새규칙을 클릭해주자

 

 

새 규칙을 클릭하면 규칙종류~이름 총 다섯단계에 걸쳐 새 규칙을 만들 수 있다.

 

 

 

 

1단계 규칙종류

[포트] 선택 -> 다음

2단계 프로토콜 및 포트

[TCP]선택, [특정 로컬 포트] 선택 -> [80]입력 -> 다음

APM setup의 portnumber은 80이기 때문

(안될시 3306번도 시도해보자)

3단계 작업

[연결허용] 선택

4단계 프로필

개인 사정에 맞게 선택 (본인은 도메인,개인,공용 모두 선택함)

5단계 이름

각자 원하는 이름으로 작명

 

마침

 

4. APM setup 외부접속 허용

여러분들이 APM setup을 설치한 폴더/APM_Setup/Server/Apache/conf/extra/ 에서

httpd-alias.conf 파일을 열면

외부접속을 하기위해 어떻게 변경해야하는지 주석문에 나와있는데

주석문과 똑같이, <IFModule> 태그와 그 자식태그들을 남겨놓고 저장

 

5. php파일 저장

APM setup의 htdocs라는 폴더에 index.php 라는 기본 php파일이 보인다면 잘 따라온 것이다

그 옆에 고스란히 놔주자

htdocs는 hypertext documents의 약자이다.

간단한 원리를 말하자면 Apache서버가 htdocs안의 내 php파일과 통신하게 되는 것이다.

 

여기까지 했는데 아직 외부접근이 안된다면

추가로 데이터베이스에서 grant 문으로 privileges를 부여하는 작업을 해야 하는데

이 방법은 링크로 남기겠다.

https://kimcoder.tistory.com/10

 

데이터베이스 외부접근 권한 부여

데이터베이스에서 아무 권한도 설정을 해놓지 않았다면 use mysql; select host, user, password from user; 을 입력했을때 자신의 로컬호스트의 정보들만 볼 수 있을 것이다. grant all privileges on *.* to 'ro..

kimcoder.tistory.com

 

반응형

댓글