なるの備忘録

エンジニアリングそして営業ができるエンジニアに向けて、日々学んだことをアウトプットしていきます。

PHPで作ったWebサービスをネットに公開する

Webサービス(PHP+CSS+JS)をネットに公開する

せっかく作ったサービス、ネットに公開してみたいですよね。
Herokuというサービスを使って、Webサービスを公開していきます。
MySQLなどのデータベースと連携したサービスの公開方法ではありません。

前提

環境:Windows10、gitインストール済み


ステップ1:Herokuのアカウント登録

1-1:Herokuのトップページにアクセス

Heroku とは、PaaS(Platform as a Service)と呼ばれるサービスで、サーバコンピュ ータを提供してくれるサービスです。
まずは下記にアクセスしてアカウント登録をしましょう。
jp.heroku.com

1-2:アカウントの新規登録画面へ

アカウントの新規登録画面へ

f:id:narunaru7638:20190118225040j:plain
赤い枠で示した「無料で新規登録」をクリック

1-3:アカウント登録に必要な情報を入力

f:id:narunaru7638:20190118225211j:plain
アカウント登録に必要な情報を入力

適当にアカウント登録が出来たら次に進みましょう。


ステップ2:Heroku CLIのインストール

Heroku CLIをインストールして、「heroku」コマンドを使うことでアプリをデプロイしてきます。

2-1:Heroku CLIのダウンロード

下記サイトにアクセスしてHerokuCLIをダウンロード
devcenter.heroku.com

f:id:narunaru7638:20190118221344j:plain
自身のOSに合わせてダウンロード

2-2:Heroku CLIのインストール

ダウンロードしたファイルを実行して、インストールを行いましょう。


ステップ3:Herokuアプリの作成

3-1:プロジェクトフォルダへ移動
> cd \「自身のプロジェクトフォルダ」
3-2:Herokuへログイン
>heroku login

上記コマンドを実施した後に、Herokuに登録したメールアドレスとパスワードを入力してください。
下記のような表記が出れば成功です。

Logged in as 「Herokuに登録したアドレス」
3-3:Herokuアプリを作成

下記コマンドでHeroku上にアプリケーションを入れるための箱を用意します。

heroku create 「自身のアプリケーション名」

アプリケーション名は他の人と重複できません。
独自の名前をつけてください。
(heroku createだけで実施するとランダムなアプリ名となります。)


ステップ4:アプリのデプロイに必要なファイル等の作成

4-1:Gitリポジトリの新規作成

HerokuアプリはGitのリモートリポジトリとして、作成されます。
下記コマンドでまずgitリポジトリを新規作成しましょう。

>git init
4-2:リモートリポジトリの作成

下記コマンドでリモートリポジトリを作成します。

heroku git:remote -a 「自身のアプリケーション名」
4-3:git にリモートリポジトリとして 作成されたherokuの確認

git にリモートリポジトリとして heroku が作成されて います。リモートリポジトリを確認してみましょう。

>git remote -v
heroku  https://git.heroku.com/「自身のアプリケーション名」.git (fetch)
heroku  https://git.heroku.com/「自身のアプリケーション名」.git (push)

こんな感じになれば成功です。

4-4:composer.jsonの作成

プロジェクトフォルダに「composer.json」ファイルを作成しましょう。
ファイルの中身は以下の通り。(PHPのバージョンは自身のバージョンに合わせてください。)

{
  "require": {
    "php": "^7.3.0"
  }
}

PHPのバージョンは以下のコマンドで確認。
>php -v

4-5:composerのアップデート
composer update

問題なければ、「composer.lock」というファイルが出来ているはずです。

4-6:Procfileの作成

プロジェクトフォルダに「Procfile」(拡張子なし)というファイルを作成します。
ファイルの内容は下記の通り。
Procfile は、どのWebサーバを使うかという指定をしています。
下記で Heroku の apache2 サーバを利用する場合です。

web: vendor/bin/heroku‐php‐apache2 /
4-7:Gitのコミットを最新に

以下のコマンドを実施して作成したファイル等を含めたGitのコミットをします。

git add .
git commit -m "コミット名"

ステップ5:アプリのデプロイ

5-1:アプリのデプロイ

登録されたリモートリポジトリ heroku に対して、 git push を行うと、デ プロイできます。

git push heroku master

デプロイ中はいろいろ表示され、少し待ちますが、
最終的に以下のような表記がされれば成功です。

remote:        https://「自身のアプリケーション名」.herokuapp.com/ deployed to Heroku
remote:
remote: Verifying deploy... done.
To https://git.heroku.com/「自身のアプリケーション名」.git
 * [new branch]      master -> master
5-2:公開されたアプリのURLにアクセス

下記のように自分で設定した Herokuアプリ名  の URL にアクセスしてみてください。

https://「自身のアプリケーション名」.herokuapp.com/「アクセスしたいphpファイル名」.php