2017-01-10 8 views
0

私は1つのサーバー上で2つのアプリケーションを実行することを任されていますが、私はこれを間違って設定していると思います。発生してはならない。 (Foo/Barは初期のプロジェクトで、サイトに既にセットアップされていて、QMSは作成したアプリであり、追加しようとしている)。おそらく注目に値する、私は両方のWSGIScriptAlias '最初の仮想ホストで宣言するなどの他の形式を試して、これは私の同じURL形式を提供します。1つのサーバに2つのDjangoアプリ

URLが見えるように目的としている:現在のURLがあるしかし mysite.com/foo/bar & mysite.com/QMS

: mysite.com/foo/bar & mysite.com/foo/QMS

私たちが直面しているエラーは、Djangoの「ProgrammingError」です。そこでは、私たちのDBは存在しないと確信していますが、私たちはそれが実証済みであり、私たちは移行を楽しみにしています。とにかく関連する設定に行きます。だから私は今のようにこれをセットアップしている:

<VirtualHost _default_:443> 
    ServerName web.mysite.com 
    ServerAlias www.mysite.com 
    WSGIScriptAlias /foo /var/www/html/foo/bar/wsgi.py 

    DocumentRoot /var/www/html 

    <Directory /var/www/html/foo/mediaroot> 
     Require all granted 
    </Directory> 
</VirtualHost> 

<VirtualHost _default_:443> 
    ServerName web.mysite.com 
    ServerAlias www.mysite.com 
    WSGIScriptAlias /qms /var/www/html/qms/QMS/wsgi.py 
    Alias /static /var/www/html/qms/staticroot/ 

    <Directory /var/www/html/qms> 
     Order allow,deny 
     Allow from all 
    </Directory> 
</VirtualHost> 

これは私が困惑しているように私は本当に助けていただきありがとうございます!

EDIT:可能な有益な情報。/www/html/foo /ディレクトリには、その中にメインのQMSフォルダがあります(ビュー&のモデルは含まれていますが設定などは含まれていません)。これは設定で宣言されているデータベースの問題に関連しています。 djangoデバッガ私たちはwww.mysite.com/foo/QMS上でいつQMS設定よりfoo/bar設定を実行しているかを見ることができます)

+0

同じ '' ServerName''と同じポートを持つ '' VirtualHost''定義を2つ持つことはできません。最初のものだけが使用されます。同じ '' VirtualHost''に '' WSGIScriptAlias''の両方のディレクティブを持たなければなりません。 mod_wsgiのデーモンモードを使い、各Djangoインスタンスを別々のプロセスセットで実行するように委任するべきです。 –

+0

@GrahamDumpleton私はこの質問を投稿して以来、1つのVHostを使用するように移動しました。しかし、DaemonProcessを使用すると、2つのスタティックマイクロ(各アプリケーションに1つ)を提供できなくなってしまったので、同じVHostで別名を使用して宣言しましたが、今は最初のものを使用するだけです。私はそれを回避することはできますか? –

+1

''/static''を両方使うことはできません。両方に異なるプレフィックスを使用する必要があります。あなたは現在両方のために何を持っていますか? –

答えて

0

私はそれを理解して、同じ場所に詰まっていた。だから、私の気持ちは私の仕事の同僚が自分のプロジェクトを通して私のURLにアクセスすることを可能にする合併バージョンをコミットしたことでした。これは私がそれが誤った構成だったと信じさせました。

だから、それを解決するために、我々は再アップロードし、彼から私のアプリを削除し、その後、私は私のアプリwsgi.pyファイルにこれを追加しました:

path = "/var/www/html/qms"  # Make it the base folder of your app 
if path not in sys.path: 
    sys.path.append(path) 

そして今、我々は正しいURLを転がり、私のしていますアプリは私が得ていたエラーを解決する私の設定を使用しています。

関連する問題