WEB開発

Laravel 6.xをXServer(エックスサーバー)で使う 各種設定編

https://uedive.net/2019/12/15/xs-laravel/

インストール編でプロジェクトの準備ができました。

プロジェクトが完成したら次は各種設定を行っていきましょう。(DBの接続先やらプロジェクト名やら)

作成したプロジェクトの中身を見てみると以下のようになっているはずです。SSH接続して直接確認するか、ファイルマネージャーにログインして確認してみましょう。

プロジェクトルート
┣app
┣bootstrap
┣config
┣database
┣public
┣resources
┣route
┣storage
┣tests
┣vendor
┣.editorconfig
┣.env
┣.env.example
┣.gitattributes
┣.gitignore
┣.styleci.yml
┣README.md
┣artisan
┣composer.json
┣composer.lock
┣package.json
┣phpunit.xml
┣server.php
┗webpack.mix.js

データベース設定

データベースの設定ファイルは[config/database.php]にあります。

一部抜粋しますがこのファイルでは.envファイルから設定値を読み込んでいて、設定値がないときの初期値を入力できるようですね。

//......
'host' => env('DB_HOST', '127.0.0.1'),
//......

ざっくり解説すると.envファイルにDB_HOSTが設定されていればその値、なければlocalhost(127.0.0.1)に設定されます。

今回は.envで設定するのでこのファイルは触らないようにしましょう。

.envファイルを編集する

DBの設定、アプリケーション名の設定などをしましょう。

.envファイルは作成したプロジェクトの直下にあります。

最低限書き換えるものは以下です。

APP_NAME=[アプリ名]
APP_DEBUG=[デバッグ情報を表示するかどうか]
//・・・
DB_CONNECTION=mysql
DB_HOST=[XServerで確認]
DB_PORT=[XServerで確認]
DB_DATABASE=[XServerで確認]
DB_USERNAME=[XServerで確認]
DB_PASSWORD=[XServerで確認]

APP_DEBUGは様々な情報が表示されるため、本番環境では[false]にしておきましょう。

[XServerで確認]となっているものはサーバーパネル>データベース>MySQL設定で確認します。

タイムゾーンを日本標準時に変更する

laravelではタイムゾーンはデフォルトでUTC(協定世界時)になっています。特別な理由がなければ日本標準時でいいので書き換えておきましょう。

//'timezone' => 'UTC',
'timezone' => 'Asia/Tokyo',

HTTPS化

HTTPS化はもはや必須になっています。必ず対応しましょう。

RewriteEngine On を以下の3行に変更します。

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

-WEB開発
-, ,