PrestaShop用のプラグインを開発していますが、問題は自動更新にあります。権限の問題が原因でクライアントサーバーで失敗することがあります。
プラグインはzip形式(php / curlを使用)でダウンロードされ、PHPスクリプトを介してプラグイン_tempに抽出され、プラグインに名前が変更されます。途中で聞いたように、権限が変更されたか、所有権が変更されました。
これらのアップデートを処理する正しい方法は何ですか? zipを/ tmpに解くべきですか?私は多くのWebアプリケーションが自動更新プラグインを持っているので、ある種の標準的な手順が必要だと思います。
ありがとう
ベストアンサー1
2つの答え:
- zipファイルには、Unixの所有者や資格情報は保存されません。代わりにtarファイルを使用してください。
Stack Overflowには、このトピックに関するいくつかの質問と回答があります。
https://stackoverflow.com/questions/10735297/maintain-file-and-folder-permissions-inside-archives
- 更新を処理する正しい方法は、ユーザーがSSHセッションでアップロードして実行できるインストーラスクリプトを作成することです。 Webサイトには独自のスクリプトファイル(または.htaccessファイルを上書きしたり、新しい実行スクリプトを追加するなどの権限を持ってはいけません)。多くのWebホスティングサービスでは、これが困難または不可能である可能性があることを知っていますが、これは非常に安全な抜け穴であることを認識することが重要です。