LaravelアプリをXSERVERで公開②シンボリックリンクを貼って公開

LaravelアプリをXSERVERで公開②シンボリックリンクを貼って公開

1263 回閲覧されました

みさなんこんにちは、jonioです。

前回はLaravelのプロジェクトをドメインの直下に配置しました。

まだ解説を読んでない方は↓からどうぞ。

今回はLaravelのプロジェクトのデータベースを作成してシンボリックリンクを作成して後悔します。

前回の解説でサブドメインを作成してLaravelのプロジェクトをドメイン直下に配置しましたがフォルダの位置関係は↓になっています。

↑の赤枠がLaravelプロジェクトで青枠がサブドメインです。

まずはLaravelプロジェクトにcomposerをインストールします。

 

composerのインストール

XSERVERにssh接続します。(もう接続している状態の方はssh接続をもう一度しなくていいです)

コマンドは↓でした。

ログインした次のページにアカウント名とホスト名が表示されますがアカウント名は↓の赤枠でホスト名は↓の青枠です。

ssh接続をしようとするとXSERVERで鍵設定をした時のパスフレーズの入力を求められるので入力します。

成功するとターミナルの表示が↓になります。

Laravelのプロジェクトに移動する為に↓のコマンドを叩きます。

composerをインストールします。

次はデータベースの作成です。

 

データベースの作成

XSERVERにログインして「サーバー管理」をクリックします。

「MySQL設定」をクリックします。

「MySQL追加(↓の赤枠)」からデータベースを作成して「MySQLユーザー追加(↓の青枠)」からユーザーを作成します。

作成したデータベースを↓の赤枠とします。

先程MySQLユーザーを作成しましたが↑の緑枠の中で選択できるので選択して「追加」を押すと↑の青枠に追加したMySQLユーザーが入っているのでそれを選択します。

これでデータベースの作成ができました。

次は作成したデータベースとLaravelプロジェクトの連携をします。

 

データベースとLaravelプロジェクトの連携

Laravelのプロジェクト(laravel-ec20230313)の中には「.env(隠しファイル)」があるのですがGitからクローンすると.envはないので開発した環境の中の.envをFTPを使ってlaravel-ec20230313の中に入れて下さい。

私はFTPにFileZillaを使っていますがざっくりした解説を↓でしています。

.envの11行目〜16行目当たりを修正します。

「変更する①」・「変更する②」・「変更する③」・「変更する④」を修正します。

「変更する①」の調べ方は以下になります。

phpmyadminに入ります。

するとMySQLユーザー名とパスワードを求められるので先ほどMySQLユーザーを作成した時のユーザー名とパスワードを入力して下さい。

phpmyadminのページに移動すると↓の画面になりますが赤枠が「変更する①」です。

「変更する②」・「変更する③」・「変更する④」は以下になります。

変更する② : 先程作成したデータベース名

変更する③ : 先程作成したユーザー名

変更する④ : 先程ユーザー名を作成した時のパスワード

変更したらターミナルで↓のコマンドを叩きます。

失敗したらまず「変更する①」・「変更する②」・「変更する③」・「変更する④」の何かを間違えてないかを確認した方がいいです。

後2ヶ所変更する部分があるので変更しますが↓を変更して下さい。

2行目と4行目を変更しています。

2行目はデフォルトがlocalhostになっていると思いますが本番環境は「production」に変えます。

4行目は「true」だとエラーが出た時にブラウザに表示されるので表示されない様にする為にfalseにします。

これで.envの設定は終わりで最後はシンボリックリンクです。

 

シンボリックリンク

1回目の解説でサブドメインを「laravel-ec」から「laravel-ec-rename」に変えました。

「laravel-ec」に戻して「https://サブドメイン.ドメイン」をクリックすると↓が表示されます。(確認できたらlaravel-ec-renameに戻して下さい)

サブドメインにアクセスした時にドメイン直下に置いたLaravelのプロジェクトを表示するのにシンボリックリンクを貼らないといけません。

ssh接続をした最初の位置に戻る為に↓のコマンドを叩きます。

シンボリックリンクを貼るコマンドは↓です。

実際に表示されるフォルダはlaravel-ec20230313でサーバーがアクセスするフォルダはlaravel-ec(今はlaravel-ec-renameに名前を変えています)です。

だからコマンドは↓になります。

laravel-ecをlaravel-ec-renameに変えていますがコマンドを叩く時はlaravel-ecのままでいいです。(フォルダ名をlaravel-ecのままにするとLaravelプロジェクトの内容が表示されません)

これでサブドメインがあるURLにアクセスするとLaravelのプロジェクトの内容が表示されます。

以上でサブドメインにLaravelのプロジェクトをアップロードする方法の解説を終わります。