Magentoマルチサイト環境をセットアップするための私の通常のアプローチ。
これを行うときに達成したい追加の目標は次のとおりです。コアコードを邪魔にならないようにし、パブリックフォルダーをクリーンアップし、展開とテストを容易にするためにパックします。
magento_base/
htdocs/
htdocs/website_01/
htdocs/website_01/index.php
htdocs/website_01/.htaccess <-- symlink
htdocs/website_01/js/ <--symlink
htdocs/website_01/skin/ <--symlink
htdocs/website_01/media/ <--symlink
htdocs/website_01/errors/ <--symlink
htdocs/website_01/downloader/ <--symlink
htdocs/website_02/
magento isntallationをmagento_baseフォルダーに設定し、そのすぐ隣(または必要な場所または仮想ホストが作成する場所)に、サブドメイン、Webサイト(マルチサイトの目標に応じて)ごとにフォルダーを作成します。次に、magentoのパブリック部分をこのフォルダーにシンボリックリンクし、index.phpのコピーを作成し、Mage.phpを含めるためのパスを変更し、その最後にWebサイトまたはストアコードを設定します。
*サイトが少ない場合は、magento_base内にhtdocsフォルダーを作成して、展開を容易にし、そのフォルダー内にドメインをマッピングできることに注意してください*
次のステップは、ドメイン、サブドメインを指定し、それを適切なWebサイトフォルダーにマップすることです。これで準備完了です。
- ドメインをパブリックフォルダーにポイントし、Magentoのいくつかのパブリックニーズをシンボリックリンクすることで、コードベースをパブリックフォルダーから取り出します。
- アップグレードによってシンボリックリンクされたファイルが混乱することはなく、サーバー構成ファイルを変更する必要もありません。
- gitを使用する場合は、これらのシンボリックリンクをステージ、ライブブランチのチェックアウトにポイントさせ、変更を本番環境またはステージ環境にプッシュすることができます。
- 本番環境の設定と競合することなく、テストサーバーのmagentoベースフォルダー内でテストし、さまざまなサイトをセットアップできます(サイトはサイトまたはストアコードでアクセスできます)クライアントはパブリックフォルダーをポイントして、他のもの、キャンペーン、ブログなどをアップロードしますmagento_baseフォルダーと混在することはなく、展開手順に含める/除外するルールを作成できます。中のがらくたはもうありません。