0

ランタイムと開発バージョンの両方を提供するサーバーをセットアップしています。実際、これはゲームの一部にすぎません。説明させてください。

私が欲しいのは:

www.mysite.com/site/: The site
www.mysite.com/site-dev-dhert45/: The dev site

どちらも同じ DB で実行されますが、「dev」は新しい最終的なコードを使用するか、debug=True を持つか、ADMIN をアクティブにするだけです。

そして、これが質問です。方法?

ここで詳細を説明すると、現在の状況です。

現在、私のサーバーには、次のタイプの .htaccess があります。

AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^site/(.*)$ site_Random/django.fcgi/$1 [QSA,L]
RewriteRule ^site-dev-dhert45/(.*)$ site_dev_Random/django.fcgi/$1 [QSA,L]

つまり、fcgi の 2 つの完全に分離されたインスタンスを開始します。

書くことによって、私は次のことに気付きました:

  1. サブドメインを持つことができれば、それは簡単だろう [私はサブドメインを持っていない]
  2. ベースドメインはdjangoによって提供されていません[これにより、何かが簡単になる可能性があります]

私は2つのアプローチを探ります:

  1. django.sites を悪用しようとしています
  2. 実際の場所をアドレス指定する新しい settings.py 変数「URL_REWRITE_LOCATION」を導入します

他の提案はありますか?

執筆中に、サブドメイン ソリューションが実際に私の問題を解決することに気付きましたが、ドメインを所有する前にこの問題がありました。だから私は次のケースのために、そして自分自身の練習として質問を残しておきます;)

そして、次の質問に移ります。ここに投稿します: アプリケーションに適切に対処する方法.

4

1 に答える 1

0

「dev.mysite.com」のようなサブドメイン レベルで dev サイトを作成するか、「hidden-dev-a0z9.mysite.com」のようなランダムな「あいまいさによるセキュリティ」メソッドに従うことをお勧めします。次に、http サーバー (nginx/apache) を使用して、そのサーバー/仮想ホストに認証を直接追加します。これにより、URL の命名プロセスが非常に簡素化され、開発が非常に簡単になります。http サーバー レベルで設定を変更するだけです。

于 2012-06-07T13:22:15.693 に答える