2

git pullを実行するフックがありますが、追加されたファイルを書き込む必要がある場合は失敗します。それがapacheとして動作するユーザーであり、書き込み権限が付与されている場合(書き込みアクセス権を持つグループにapacheを追加することにより)、gitpullfineを実行できます。

私はいくつかの解決策を考え出しました...

  • 書き込み権限を持つグループでapacheを維持する(安全でないと感じる)
  • ファイルの所有権をapacheに変更する(安全ではなく、ハッキー)
  • sudoを使用する(ただし、パスワードを保存するか、パスワードを持たない必要があります)
  • git pullの実行の前後にapacheの書き込みを追加するchmodを実行する(ハッキー)

ただし、これらはすべて、安全でない/ハッキーなソリューションのようです。

これらの問題を回避するために使用した提案や方法を共有してください。特にこのハードルを自分でジャンプしなければならなかった場合は、解決策を聞いてみたいと思います。

4

1 に答える 1

1

別の解決策 (おそらく旧式) は、実際の作業を実行する setuid プログラムを作成し、その setuid プログラムをフックから実行することです。

SELinux で実行している場合、フックが Apache ユーザーとして実行されることを考えると、setuid プログラムをフックから実行するためにパーミッションを微調整する必要がある場合があります。

于 2013-02-06T23:15:31.993 に答える