2011-10-10 12 views
14

私の開発環境では、静的ファイル(jsスクリプトとCSS)を提供するため断続的な障害が発生しています。 Chromeのエラーコンソールで404が表示されます。しかし、それらのアイテムをリフレッシュしたり、URLに直接アクセスすると、うまく機能します。Djangoのdevサーバが静的ファイルを断続的に処理できない

これは迷惑です。

例:

GET http://127.0.0.1:8000/static/js/editor/xyz.js?v=1 404 (NOT FOUND) 

が、私はURLを直接細かいことを訪れた場合。ページを数回リフレッシュすると、再び動作します。

アイデア?

クローム14.0.835.202

Django==1.3 
Fabric==1.0.1 
Jinja2==2.5.5 
PIL==1.1.7 
Pygments==1.3.1 
South==0.7.3 
Sphinx==1.0.5 
boto==2.0 
chunks==0.1 
django-devserver==0.2.1 
django-pagination==1.0.7 
django-sorting==0.1 
django-storages==1.1.3 
docutils==0.8 
gunicorn==0.12.1 
ipython==0.10.1 
paramiko==1.7.6 
pep8==0.6.1 
psycopg2==2.2.2 
pycrypto==2.0.1 
python-dateutil==1.5 
python-memcached==1.45 
wsgiref==0.1.2 
+0

「同じ問題を抱えmは。あなたはその理由を考え出す? –

+0

まだ管理しました!--forkedで実行動作するようですが、あなたのURLが持ってない理由 – Joe

+0

PDB不可能を使用して作る 『= 1』?Vを? – n3storm

答えて

2

のdevのサーバーは、何かが、それブロックのすべての要求を待ち続けるので、もしシングルスレッドです。

私はいつもマルチスレッドのdjango concurent dev serverで動作し、はるかに優れています。また、セットアップが非常に高速で簡単です。)

+4

ブロックされたサーバーは404を配信できません。 – Thomas

+0

真:/ – jujule

+0

これは私のために起こって停止しました、それはイライラしています。私はプロジェクトのDjangoを更新していない...奇妙な。 – Joe

-1

設定によっては設定が異なる場合があります。 静的に何をしましたか?設定は何ですか?静的な収集をしましたか? 開発で静的ファイルの提供については、しかし場合

thisを試してみてください。

DEBUGがTrueの場合にのみ動作します警告。

これは、このビューがであり、ひどく非効率で、おそらく安全性が低いです。 これはローカル開発のみを目的としており、実稼働環境では を使用しないでください。 here

あなただけの別のサーバーに静的ファイルを供給できないから

?まだ誰もがこの問題を持っている場合、すべての答えを読んだ後

+0

これはずっと前に私が覚えていないことは残念です。私はそれが起こって停止したと思ったので、私はそれについて心配しなくなりました。 – Joe

+0

devサーバから静的ファイルを提供するのは正常です。これは開発にとって典型的なことです。私はこれが生産で起こるとは言いませんでした。 – Joe

-1

... Djangoの自然あたりとして、あなたは、次のようにちょうどあなたの設定ファイルは、適切な構成を持っている必要があり 静的なファイルを提供するために何かをする必要はありません。

STATIC_URL = '/static/' 

STATICFILES_DIRS = (
    # **THIS IS USED WHEN YOUR STATIC FILES ARE IN SOME OTHER FOLDER ALSO** 

    # Put strings here, like "/home/html/static" or "C:/www/django/static". 
    # Always use forward slashes, even on Windows. 

    # Don't forget to use absolute paths, not relative paths. 

    FOLDER_NAME, 
) 

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder', 
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
    'django.contrib.staticfiles.finders.DefaultStorageFinder', 
) 

INSTALLED_APPS = (
    # other apps 
    'django.contrib.staticfiles', 
) 

しかし、あなたが問題に直面し、まだ場合にこれを入れて、あなたのurls.py

(R '^(ファイルのパス)$'、 'django.views.static.serve'、{ 'DOCUMENT_ROOT': ' PROJECT_ROOT_DIR '+ "静的フォルダへのパス"})、

上記のURLは、JSファイルでもCSSでも画像でも静的ファイルに使用されます。

プロダクションサーバーの場合、これは必要ありません。

次に、実行:python manage.py collecstatic

これが役に立ちます。 I

+0

申し訳ありませんが、これは役に立ちません。私の質問によると、これは断続的な問題です。意味:それはほとんどの時間に働きます。 – Joe

+0

それは、私がデフォルトであなたの開発環境で静的ファイルを提供するために何もする必要はないと書いたものです。しかし、不規則な間隔でそれに直面している場合は、これでそれを微調整することができます。これが助けてくれることを願って。 –

+0

ありがとうございますが、これは問題ではないと思います。これはおそらくソケットの周りを少し下げて処理しています(つまり、ファイル提供の設定ではなく、Djangoコードを使用する)。 – Joe

関連する問題