2017-01-06 4 views
0

(Ubuntu 16.04、Django 1.10、Apache 2.4.18、mod_wsgi、virtualenv。)私のチュートリアルに従っていません;))、軽いDjango開発サーバーを使ってテストします。エラーはありません。デプロイメントの前に、私はラップトップ上のApacheサーバーを使って「自宅で」テストしたいと思っています。私はzarzifというプロジェクトを/ var/www/htmlに移動しました。そのため、manage.pyは/ var/www/html/zarzifにあります(そして、import zarzifはその場所で働いています)。ファイルwsgi.pyは/ var/www/html/zarzif/zarzifにあります。私apache2.confには、次のものが含まれていますDjango 1.10/Apache 2.4.18、内部サーバーエラー "モジュール名のないURL"

WSGIScriptAlias//var/www/html/zarzif/zarzif/wsgi.py 
WSGIPythonPath /var/www/html/zarzif/ 

<Directory /var/www/html/zarzif/zarzif> 
<Files wsgi.py> 
Require all granted 
</Files> 
</Directory> 

しかし、サーバを起動し、「500内部サーバーエラー」の結果を127.0.0.1に行くとerror.logには(少数のコピーに)言う

from django.urls import reverse, referer: http://127.0.0.1/ 
ImportError: No module named urls, referer: http://127.0.0.1/ 

私は間違っていますか?私はいくつかの関連する質問をチェックしましたが、私はこの特定の問題で誰も見つけませんでした。前もって感謝します!

(両方の/ var/www/htmlと設定し、/ var/www/htmlと設定/ zarzifこれは重要ですが、グループWWW-データを所有しているかどうかわからない。)

EDIT:以下David542のソリューション@をインポートすることです代わりにdjango.core.urlresolversからreverseを入力してください。なぜ私はDjango 1.10を使用しているので、私は考えていないが、それは働いた。

答えて

2

バージョン1.10以降では非推奨になっているようです:https://docs.djangoproject.com/en/1.10/ref/urlresolvers/#module-django.urls

"古いバージョンでは、これらの関数はdjango.core.urlresolversにあります。"ここで

は私が

>>> import django 
>>> django.VERSION 
(1, 4, 13, 'final', 0) 
>>> from django.urls import reverse 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named urls 
>>> from django.core.urlresolvers import reverse 
>>> 
+0

を1.10+前のバージョンを使用してreverseをインポートするためにやっているのですありがとうございましたが、私はそれはそれはないと思います。私はDjango 1.10を使用していて、 'django.urls import reverse 'コマンドでエラーは発生しません! –

+0

@LeszekWrońskiokですので、あなたのコードで 'from django.urls'を' from django.core.urlresolvers'に置き換えてください。 – David542

+0

残念ながら、同様のエラーメッセージが残っています(1.10では 'django.urls'の' reverse'の正しい位置ではありません)。元の投稿を編集して、より多くのトレースバックを含むようにしました。問題は、私はプロジェクトで私は何かをする必要がありますアプリを持っていることでしょうか? –

関連する問題