BGM용 세이라디오
열기▼       고정
전체
글목록

Heroku에 php 프레임워크 서버 구축하기(windows)

금요일, 5월 09, 2014
어쩌다보니 heroku라는 클라우드 플랫폼을 접하게 되었는데 흔히 무료 호스팅으로 접하는 shared hosting 사이트들과 확연히 다르게 작동하는 것을 볼 수 있었다. 그 유명한 커맨드 라인을 사용하던데, 엄청 어려워 보였지만 속도가 당시 이용 중이던 서버보다 훨씬 빠른 것이 굉장한 매력으로 다가와서 이 사이트로 옮겨보기로 했다.
성능은 512MB 램에 저장 공간 1TB, 대역폭 1TB/달 이다. 게다가 보통 무료 서비스에서 제공되지 않는 cURL 등의 아주 쓸 데가 많은 기능도 제공된다. 무료 호스팅 서비스로 꽤 괜찮은 조건이다.


-----------잘못된 내용 확인. 편집 예정.------------
가입하기
이메일 입력 → 확인 메일 발송, 확인 → 비밀번호 지정 → 앱 아무거나 추가



php 구축하기(중요한 내용이 많으니 정독할 것!)
https://devcenter.heroku.com/articles/getting-started-with-php
여길 참고하면 되지만 개발자가 아닌 블로거로서 접근하기엔 상당히 어려울 수 있다. 필자가 시도해보고 더 쉽게 풀어 쓰겠다.

1. 위의 링크에 들어가 Heroku Toolbeit 프로그램을 다운로드한다.(컴퓨터(local)에서 작업해 그 중 업데이트할 사항을 체크한 후 서버에 업데이트하는 방식이고, FTP를 지원하지 않아 프로그램을 따로 설치해야 한다. 이용해보니 생판 모르긴 하지만 'git'라는 언어를 기반으로 만든 것 같다.) 다운 버튼은 색깔이 칠해져있어 쉽게 찾을 수 있을 것이다.

2. 설치를 완료한 후, 명령창을 실행한다.(필자는 Start Command Prompt with Ruby라는 이름이었다. 시작 메뉴에서 Ruby ... 폴더에 설치된다.)

3. heroku login 입력, 이메일과 비번 입력
연결 중에 필자는 ~~~(yes/no)라는 메시지가 떴는데 대충 "서버가 진짜 맞습니까?" 하고 묻는 듯한 내용이었다. 이때 그냥 엔터를 치면 실패하고 yes라고 입력한 후 엔터를 쳐야 "인증된 서버로 등록됩니다"라는 경고 메시지와 함께 연결된다.

4. (처음 시작할 때만)mkdir hello_heroku_php 입력
cd hello_heroku_php 입력
아마 콘솔창에서 위치가 사용자 폴더(관리자 계정인 경우 Administrator)로 지정됐을텐데, 첫 명령어 mkdir은 폴더(=디렉토리)를 만든다. 두번째 명령어 cd는 그 폴더로 이동한다.
폴더가 만들어진 뒤엔 필요없으므로 cd 명령어만 사용한다.

5. touch composer.json 입력
설명을 보면 텅 빈 파일을 새로 만들어내는 역할을 하며, 일련의 작업을 진행하기 위해선 이 파일이 필요하다고 한다.
서버 설정 등 좀 더 심화된 설정을 다루려면 composer라는 프로그램을 깔고 저 파일도 편집해야 한다고 해서 필자는 그 부분은 아예 생략했다.(이 글에서 쓸 분량의 다음 내용이기 때문에 딱 그 전까지만 쓴다.)

6. git init
git add .
git commit -m "Initial import of Hello Heroku"
하나 빼먹고 순서 틀리고 한 경험과 명령어 입력시 나오는 메시지들을 종합해보면 이 명령어들은 업데이트할 파일들을 선별하고 준비시키는 역할을 하는 것 같다.
"" 안에 들어있는 Hello Heroku라는 문장은 위에서 hello_heroku_php 라는 폴더를 만든 것과 연관이 있는 걸까... 이건 잘 모르겠다.

7. 앱을 이미 만들었다면 7-2로, 아니라면 heroku create 입력

7-2. http://stackoverflow.com/a/21941352 이 답변 참고. 필자가 직접 해보고 문제를 해결한 답이므로 해석해서라도 이용하기 바란다.

8. git push heroku master 입력
파일을 서버로 업로드하는 명령어다. 여기서 slug라는 용어가 등장하는데, 필자가 해석한 바로는 서버에 보내져 해석되는 프로그램으로 보인다. 기본 크기가 57.4MB였고 업데이트 파일들이 더해져 압축되어 전송되는 것으로 보인다.

실행하기
앱 이름이 example이라면 할당되는 서브 도메인은 example.herokuapp.com이다.

만약 앱 이름을 바꿔 push가 안되는 경우, 위의 7-2에서와 같이 연결 정보의 이름값을 바꿔야 한다.(현재 연결된 앱의 이름을 바꾸는 명령어와 혼동 주의.)



인터넷에서 외국의 평판을 알아봤고 특징을 정리해보면, 유저가 하는 서버 관리의 비중이 적은 편이며(장점이자 단점), ASICS 홈페이지 등 대규모 사이트들이 이 플랫폼을 이용하고 있고(홈페이지에 success라고, 홍보하는 공간이 마련돼있다.), 어느날 아침에 잠시 서버가 다운되어 이용자들이 피해를 본 적이 있다고 한다.



지금껏 이용했던 호스팅 서비스들에 비해 쉽게 접근하기 어려운 편이지만 인터넷으로 검색해가며 문제를 해결해가며 그럭저럭 지금은 안정적으로 이용하고 있다. 유용한 기능과 상당한 트래픽 제공이 매력적이어서 쉽게 놓을 수 없었던 게 가장 큰 동기였다.
첫 댓글을 써주세요!

댓글을 인용하려면 @![댓글 ID]!@와 같이 쓰시면 됩니다. "@!" 와 "!@"를 쓰시려면 "+@+!+", "+!+@+"와 같이 써주세요.

페이스북 댓글
.post-outer{ -webkit-transform:none; transform:none; display:inline; padding:0; margin:0; border-width:0; } .hentry>div{ display:none; }