symfony4をアップロードする方法

はじめに

ホスティングサーバにsymfony4をアップロードする手順です。
Webサーバはapacheです。
symfony本体をアップロードするディレクトリは、ドキュメントルートに設定されているディレクトリと兄弟関係にします。

root
  |_ public_html
      |_ ...
  |_ symfony
      |_ ...

事前準備

  • アップロードしたいsymfony4アプリケーション
  • アップロードで使用するFTPアカウント

上記が準備されているものとします。

まず、.envファイルのAPP_ENVの値をprodにします。

APP_ENV=prod

その後、composerコマンドを叩いてアップロードするための環境を整えます。

composer install --no-dev --optimize-autoloader
composer dump-autoload --optimize --no-dev --classmap-authoritative

下記コマンドを叩いて、apache-packをインストールします。

composer require symfony/apache-pack

publicフォルダ内に.htaccessとindex.phpが追加されていると思いますので、追加されたindex.phpを編集します。

// ...
// 8行目あたり
require __DIR__.'/../symfony/vendor/autoload.php';
// ...
// 15行目あたり
    (new Dotenv())->load(__DIR__.'/../symfony/.env');
// ...

今回はsymfonyディレクトリにインストールするので、上記のようにsymfonyの設置先を書き換えました。

自分の環境に合わせて適宜設定を書き換えてください。

アップロード

ファイルをアップロードしていきます。まずはsymfonyフォルダにアップロードします。

  • /bin
  • /config
  • /src
  • /templates
  • /translations
  • /vendor
  • .env
  • composer.json

上記にあるファイルとフォルダをsymfonyディレクトリにアップロードします。

次に、先ほどapache-packのインストールで追加された.htaccessとindex.phpをサイトのドキュメントルートにアップロードします。

ファイルのアップロードは以上です。

追加でsymfony上にvarディレクトリを作成しておきましょう。パーミッションは755にします。ここにログやキャッシュが書き出されるようです。

root
  |_ public_html
      |_ .htaccess
      |_ index.php
  |_ symfony
      |_ .env
      |_ bin
      |_ composer.json
      |_ config
      |_ src
      |_ templates
      |_ translations
      |_ var
      |_ vendor

最終的なファイル構成は上記のようになっているかと思います。

データベース

bin/console doctrine:schema:update --dump-sql

上記コマンドで吐き出されたダンプファイルをデータベースに読み込ませたりするのだと思います。詳しいことは引用先を参考にされてください。

おわり

サイトにアクセスしてみて、ページが表示されたら無事インストール完了です。

引用


投稿日

カテゴリー:

投稿者:

タグ: