1

Slim アプリをデプロイしようとしています。SlimControllerを使用しています。Slim と SlimController の両方がロードされcomposer.jsonます:

{
  "require": {
    "slim/slim": "2.*",
    "slimcontroller/slimcontroller": "dev-master"
  }
}

VPS でローカルホスト環境を複製しました: Ubuntu 13.04、Apache 2.4、PHP 5.5.3。git を使用して裸のリポジトリにデプロイします。すべてが localhost で機能し、リポジトリにプッシュし、post-receivegit フックを実行してファイルをパブリック Apache フォルダーに移動することで、すべてがサーバーで正常に機能していました。

#!/bin/bash
export GIT_WORK_TREE=/var/www/site
git checkout -f dev

Composer で SlimController をインストールし、再度リポジトリにプッシュすると、フォルダーvendor/slimcontroller/slimcontrollerが作成されていることがわかりますが、空です! 私のローカルホストにはすべてのファイルがあり、アプリは動作しますが、サーバーには何もありません。SlimController クラスが見つからないため、アプリは例外をスローします。

ベアリポジトリを作成してからこれらのコマンドを実行するときに、フォルダーに必要なすべてのアクセス許可があることを確認しました (私のユーザーは既に Apache を所有する www-data グループの一部です)。

chown -R www-data:www-data /var/www/site
chmod -R g+rw /var/www/site

何が起こっているのかわかりません。コミットしてプッシュすると、すべて問題ないように見えますが、何らかの理由でフォルダーが空になります。Composer で他のパッケージを追加しようとしましたが、同じ問題が発生しました。パスは作成されますが、サーバー上のフォルダーは空です。composer installゼロから何度も試してみましたが、Slimフォルダーは正しくコピーされますが、他のフォルダーは正しくコピーされません。私は無知です...それを修正する方法はありますか?

4

0 に答える 0