2012-01-28 9 views
1

設定を動作していませんmod_wsgiを、ジャンゴとApacheが正しく

django.wsgi

import os 
import sys 


path = '/home/cha0s/hello' 
if path not in sys.path: 
    sys.path.append(path) 
os.environ['DJANGO_SETTINGS_MODEULE']='hello.settings' 



import django.core.handlers.wsgi 
application = django.core.handlers.wsgi.WSGIHandler() 

Apacheのファイル:の/ etc/apache2の/ sites_available /ハロー

こんにちは

<VirtualHost *:80> 

    ServerName blabla.com 
    DocumentRoot /home/cha0s/hello 




    WSGIScriptAlias http://blabla.com /home/cha0s/hello/apache/django.wsgi 

    <Directory /home/cha0s/hello/apache> 
     Order allow,deny 
     Allow from all 
    </Directory> 


</VirtualHost> 

質問:

だから、問題は、それは一種のです動作しますが、ディレクトリだけを開きますdjangoのウェブサイトのようなものではなく、ファイルのリストのようなものです。どんなアイデアが間違っていますか?私はどこかでstackoverflowのmod_pythonが問題になるかもしれないので、私はそれを削除しました。

答えて

1

sys.pathに '/ home/cha0s'を追加する必要があります。

また時計を行く:

http://code.google.com/p/modwsgi/wiki/WhereToGetHelp?tm=6#Conference_Presentations

これは、あなたが間違って持っている可能性が他のものを説明していますが、エラーは、壊れている他に何言うのは難しいあなたを取得しているされたかを説明しないので。

+0

問題はありません。これはちょうどdjangoプロジェクトとしてではなく、ファイルのリストとしてこのプロジェクトを開きます。私はかなり確信しています/ home/cha0sはsys.path上にあり、今はsys.pathもそれとは何の関係もありません。それ以外の場合はエラーが表示されます。私は他のプロジェクトをmod_pythonと同じフォルダに置いていました。 – Viktor

+0

私のコメントは、WSGIScriptAliasの最初の引数を他の人の言葉で修正したという前提に基づいていました。 '/'にする必要があります.WSGIScriptAliasの最初の引数に 'http:// ...'の値を付けることはできません。あなたが最後にこれを試したときの別の反応では、あなたは500エラーがあると言った。ログのエラーメッセージはどうだったのですか?そして、実際にそのプレゼンテーションを見ましたか?それを正しく実行し、エラーを説明します。 –

+0

ところで、DocumentRootをソースコードのどこに設定するかは、セキュリティ上の大きなリスクです。誰かがあなたのsettings.pyファイルをパスワードでダウンロードすることができます。単にDocumentRootを設定せず、デフォルトのApache DocumentRootをデフォルトにします。今、そのプレゼンテーションを見てください。 –

4

あなたのWSGIScriptAlias行はナンセンスです。それはパスであり、URLではありません。

また、DJANGO_SETTINGS_MODULEのwsgiファイルのスペルが間違っています。

+0

WSGIScriptAlias /home/cha0s/hello/apache/django.wsgi '/'のように指定した最初のパラメータはURLであり、2番目のパラメータはpathです。そしてはい、私はDJANGO_SETTINGS_MODULEのスペルミスをしましたが、それはあまり変わっていません。私はsshを使ってサーバ上で設定し、別の場所から別のコンピュータにアクセスするので、基本的に '/'は私のためには今は動作しません。それは私のドメイン(blabla.comなど)からアクセスする理由です。 – Viktor

+0

最初の引数がURLでないことは間違っています。かもね。しかし、それはいくつかのディレクトリやファイルを指し示す必要があるかもしれません。私はちょうどどのディレクトリに正確に把握することはできません。あなたが 'WSGIScriptAlias/home/cha0s/hello/apache/django.wsgi'と言ったように置くと、内部サーバーエラー500が発生します。もし/ homeに置くと、リストビューが表示されます私のファイル、私は正方形に私をもたらします。 – Viktor

関連する問題