6

システムのバックアップを行っているときに、Magento で問題が発生しました。システム バックアップを実行するたびに、Magento はファイルのアクセス許可を変更し、バックアップが完了して管理画面がリロードされると、500 サーバー エラーが発生します。

問題は、この未回答の質問と同じです。「メンテナンスモード」をオンに設定していません。: https://stackoverflow.com/questions/13107963/magento-file-permissions-ching-to-chmod-666-after-system-backup

これが起こらないようにする方法を誰か教えてください。バックアップするたびに権限をリセットしなければならないのは面倒です。

4

1 に答える 1

5

この問題は、Magento Backup がファイルにアクセス許可を設定するために発生します。

違反作品は、lib/Mage/Archive/Helper/File.php

その中に関数がありますpublic function open($mode = \'w+\', $chmod = 0666)

これにより、権限がグローバルに変更されるという問題が発生します。

Magento のサイト障害バックアップを使用する必要がある場合は、スクリプトを実行してファイル/フォルダーのアクセス許可を元に戻す必要があります。

ssh コマンド (シェルスクリプトとして実行可能)

PHP が FastCGI、suPHP、または LSAPI を介して実行されている Magento の場合:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod 500 pear
chmod 500 mage #for magento 1.5+

PHP が Apache の下で DSO モジュールとして実行されている Magento の場合:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod o+w var var/.htaccess app/etc
chmod 550 pear
chmod 550 mage #for magento 1.5+
chmod -R o+w media

Magento が機能するには、var/ と media/ を再帰的に 777 に設定する必要がある場合があります

MagentoCommerce のアクセス許可設定ページから、アクセス許可を設定するために実行できる PHP スクリプトが途中までリンクされています。

もう 1 つのオプションは、Magento のバックアップ システムをダンプし、 and を使用して独自のアプローチを行うことtarですmysqldump注: media/ フォルダーを除外して別の方法でメディア フォルダーのバックアップを実行しない限り、ダウンロードするまで tar ファイルを一時的に保存するための十分な空き容量が必要になります。

tar -czf magentobu.tgz --exclude="public_html/var/*" --exclude="public_html/media/catalog/product/cache/*" public_html
mysqldump -u $USER -p$PASS $DBASE > magentodb.sql

ワークステーション、S3 バケット、vps のいずれであっても、結果のファイルをオフサイト ストレージにコピーします。

もう 1 つのオプションは、Magento システムで使用できるシステムをセットアップし、rsync1 日 1 回作成される mysql ダンプ ファイルをプルすることです。これにより、バックアップをオフサイトにプルするのを待つ間、サーバー上に余分なストレージ スペースを発生させずに、最新の完全なサイト ミラーを継続的に作成できます。

于 2013-08-17T20:32:09.677 に答える