私はドメインAとドメインBに使用されているSymfony2コアを持っています。ただし、コアを更新すると2回更新する必要があります。なぜなら、 configs/databasesで複数のドメインを持つSymfony複数のサイト
提案?
私はドメインAとドメインBに使用されているSymfony2コアを持っています。ただし、コアを更新すると2回更新する必要があります。なぜなら、 configs/databasesで複数のドメインを持つSymfony複数のサイト
提案?
この「ウェブ」ディレクトリ(Linux上のApacheを実行していると仮定)、各ドメインの「public_htmlの」フォルダへ
を「ウェブ」ディレクトリのコピーを作成アプリ(あなたのサイトのフロントコントローラが含まれています。 php、app_dev.php)を見つけて好きなテキストエディタで編集してください。
require_once __DIR__.'/../app/bootstrap.php.cache';
require_once __DIR__.'/../app/AppKernel.php';
となり、実際の相対パスに変更してください。それはこのようなものが考えられます。
require_once __DIR__.'/../the_core_is_here/app/bootstrap.php.cache';
require_once __DIR__.'/../the_core_is_here/app/AppKernel.php';
これは柔軟性があり、あなたが好きなように整理することができますが、この2行が正しいパスを持っている
は、すべての資産(JS、ということを忘れないでくださいことを確認してくださいCSS、画像など)は、フロントコントローラーの場所に関連しているため、ドメイン名の完全なURL(または)をBドメインにコピーするか、リンクする必要があります asseticを使用
最後にあなたは私は次のようなものを持っています:
/
.. home
.. .. DOMAINA
.. .. .. public_html
.. .. .. .. app.php
.. .. .. .. img
.. .. .. .. .. image.png
.. .. DOMAINB
.. .. .. public_html
.. .. .. .. app.php
.. .. .. .. img
.. .. .. .. .. image.png
.. .. the_core_is_here
.. .. .. app
.. .. .. src
.. .. .. bin
.. .. .. vendor
あなたのアプリケーションには2つのエントリーポイントが必要です。異なるCSSや画像をそれぞれ別のものにすることもできます。
Capifonyを試してみてください。Symfony
アプリケーション用にruby
で書かれたデプロイメントスクリプトです。あなたが達成しようとしているような設定はしていませんが、私はそれを使って準備サーバ&の両方を運用しています。これは、アプリケーションの異なるインスタンスを1つのサーバー(たとえば、異なるディレクトリ)または複数のサーバーに展開するようにセットアップできます。
、彼らが正しくセットアップされたら、展開は、タイピングだけの問題である:あなたがコマンドを実行し
cap server1 deploy
cap server2 deploy
毎回、capifony
は、リポジトリ(例:gitの)から最新のコードを引っ張ってくるし、それを展開。また、以前の状態に戻す必要がある場合は、古いバージョンのアプリケーションもサーバーに保存されます。
# deploy.rb
set :application, "My App"
set :deploy_to, "/var/www/my-app.com"
set :domain, "my-app.com"
set :scm, :git
set :repository, "ssh-gitrepo-domain.com:/path/to/repo.git"
role :web, domain
role :app, domain
role :db, domain, :primary => true
set :use_sudo, false
set :keep_releases, 3
そして、あなたはcapifony
ためmultistage extensionを使用して、異なるドメインのそれぞれを異なる設定スクリプトを持つことができます:ここでは
はサンプルcapifony設定スクリプトは、ちょうどあなたの概要を与えることです。
問題は、複数のデータベースを持ち、各顧客のドメインに基づいて切り替える方法です。 –
複数のエンティティマネージャを追加する必要があります(各DBに1つ)(http://symfony.com/doc/current/cookbook /doctrine/multiple_entity_managers.html)、アクセスしているドメインに応じて適切なものを選んでください(REQUESTオブジェクトのものを探してください)。 – Xocoatzin