본문 바로가기
카테고리 없음

Heroku에서 PHP App 만들기

by choies1 2022. 8. 21.

여기서는 Heroku에서 PHP App을 만드는 방법을 알아보겠습니다. PHP App을 배포하는 방법을 이용해 PHP 코드 없이 HTML로만 구성된 웹 페이지도 배포할 수 있습니다. 여기서 PHP 자체에 대한 설명은 하지 않겠습니다. 테스트로 만든 HTML 코드를 Heroku에서 실행할 수 있도록 배포하는 방법에 대해 알아보겠습니다.

PHP 샘플 코드 받기

Heroku에서 PHP App (혹은 HTML로만 구성된 Web page도 배포 및 실행 가능)을 배포하기 위해서는 몇 가지 설정이 필요합니다. 이것을 처음부터 만들려고 하면 복잡합니다. 여기서는 예제 코드를 활용해 필요한 설정을 단순화하는 방법에 대해 살펴보겠습니다.

기본적으로는 아래의 사이트에 나온 설명을 이용해 필요한 예제 코드를 받아옵니다.

https://devcenter.heroku.com/articles/getting-started-with-php

Heroku에서 PHP App 만드는 예제


준비 사항

아래의 사이트에서 설명한 대로 Git을 다운로드 받고 Heroku CLI을 다운로드 받는다.

https://devcenter.heroku.com/articles/getting-started-with-php#set-up

1. Git 다운로드 및 설치 (윈도우의 경우 아래에서 다운로드)

https://git-scm.com/download/win

2.  Heroku CLI을 다운로드 

필요한 파일 다운로드 및 설치


샘플 코드 다운로드

 windows 명령창이나 power shell에서  아래의 순서를 이용해 Heroku PHP 샘플 코드를 다운로드한다.

1. herohu에 login

아래의 명령어를 실행하고 아무 키를 한 번 누르면 웹 브라우저가 열리면서 heroku에 로그인을 요청한다.

> heroku login

$ heroku login
heroku: Press any key to open up the browser to login or q to exit
 ›   Warning: If browser does not open, visit
 ›   https://cli-auth.heroku.com/auth/browser/***
heroku: Waiting for login...
Logging in... done
Logged in as me@example.com

아래와 같이 웹 브라우저가 열리면서 login을 하라고 나오는데 login 버튼을 누릅니다.

로그인 요청

회원 가입 시 등록한 이메일 주소와 패스워드를 입력합니다.

이메일 주소와 패스워드 입력

문제가 없으면 아래와 같이 로그인이 완료됐다는 화면이 나옵니다. 이후 웹 브라우저를 닫고 다시 윈도우 명령창을 입력하는 곳으로 이동합니다.

로그인 완료

2. git clone으로 코드 가져오기

명령창에 다음의 명령어를 수행해 코드를 가져옵니다.

$ git clone https://github.com/heroku/php-getting-started.git

다음 명령어로 다운로드 받은 폴더로 이동합니다.

$ cd php-getting-started

 

 

3. App 생성하기

다음 명령어로 App을 생성합니다.

$ heroku create

4. App 배포하기

다음 명령어로 App을 배포합니다. 아래를 수행하면 Web App이 빌드되면서 배포됩니다. 이때 

$ git push heroku main

5. Web App 열기

아래의 명령어로 Wep App을 엽니다. 배포할 때 생성된 웹 페이지 주소를 이용해 접속해도 됩니다.

$ heroku open

나만의 웹 페이지 만들기

이제 앞에서 다운로드 받은 샘플 코드를 이용해 나만의 웹 페이지를 만들겠습니다.

GitHub 저장소 만들고 필요 파일 준비하기

 

1. github에 저장소 만들기

자신의 github 계정을 이용해 저장소를 생성합니다. 여기서는 ez-learning-python 저장소를 만들었습니다.

2. github에 만든 저장소(my-learning-python)를 자신의 컴퓨터로 clone해 옴

윈도우 명령창에 아래와 같이 입력해 github의 저장소의 내용을 clone해 옵니다. clone 후에는 해당 폴더로 이동합니다.

$ git clone https://github.com/YOUR_ID/ez-learning-python.git
$ cd my-learning-python

3. ez-learning-python 폴더에 다운로드 받은 샘플 코드 복사

예제로 다운로드한 php-getting-started 폴더에서 방금 자신의 컴퓨터에 clone한 폴더(ez-learning-python)로 composer.json, composer.lock, Procfile를 복사합니다. 또한 web이라는 폴더도 하나 만듭니다.

필요한 파일을 복사하고 폴더 생성

4. web 폴더 안에  index.html 파일 작성

web 폴더 안에는 index.html 파일을 만들고 아래와 같이 필요한 내용을 작성합니다. 내용은 각자 만듭니다. 예제로 받은 파일에는 index.php를 이용했지만 여기서는 간단한 HTML 예제를 살펴보기 위해서 index.html을 이용했습니다. 만약 PHP를 이용하고 싶다면 index.php를 이용하면 됩니다.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>EZ Learing Python</title>
  </head>
  <body>
    <h1>파이썬을 쉽게 배우고 활용하자!</h1>
    <p>파이썬을 쉽게 배우고 활용하는 방법을 설명합니다.</p>
  </body>
</html>

5. github의 저장소에  파일 올리기

다음의 명령어를 수행해 필요한 파일을 자신의 github 저장소에 올립니다.

$ git add ./web/index.html composer.json composer.lock Procfile
$ git commit -m "add files"
$ git push origin main

 heroku에 App 만들고 배포하기

1. heroku에 새로운 앱 생성하기

새로운 App 생성
App 이름 넣고 [Create app] 버튼 클릭

2. github의 저장소 연결하고 배포하기

1) Deployment method를 GitHub로 선택

2) GitHub의 Repository 선택 후 연결

3) Enable Automatic Deploys 버튼 클릭

4) Deploy Branch 버튼 클릭
   : 잠시 기다리면 Build가 완료됨. 오류가 있다면 GitHub에 올린 파일 다시 확인

 

GitHub 배포를 위한 설정 및 배포

3. 배포된 결과 확인

[View]를 클릭하면 웹 브라우저가 열리면서 웹 사이트가 열립니다.

웹 브라우저로 접속한 웹 사이트는 다음과 같습니다.

생성한 웹 앱에 웹 브라우저로 접속한 결과


정리

지금까지 Heroku PHP App을 만드는 방법을 이용해 내가 만든 HTML 파일을 웹 앱으로 만드는 방법을 알아봤습니다. 여기서 살펴본 내용을 이용하면 무료로 나만의 HTML 웹 페이지를 만들수 있습니다. 자신만의 웹 페이지를 만들어 보세요.