14

私の開発環境では、静的ファイル(jsスクリプトとcss)を提供するために断続的に失敗します。Chromeのエラーコンソールで404が表示されます。しかし、これらのアイテムを更新したり、URLに直接アクセスしたりすると、問題なく提供されます。

これは迷惑です。

例:

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

しかし、そのURLに直接アクセスすると問題ありません。そして、ページを数回更新すると、再び機能します。

何か案は?

Chrome 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
4

3 に答える 3

2

開発サーバーはシングルスレッドであるため、何かが待機し続けると、すべてのリクエストがブロックされます。

私は通常、マルチスレッドではるかにうまく機能するdjangoconcurentdevサーバーを使用します。また、セットアップは非常に高速で簡単です;)

于 2012-01-13T23:14:36.703 に答える
-1

セットアップに依存する場合があります。あなたは静的のために何をしましたか?設定は何ですか?コレクトスタティックを行いましたか?場合に備えてこれを試してください

ただし、開発中の静的ファイルの提供について:

警告 これは、DEBUG が True の場合にのみ機能します。

これは、このビューが非常に非効率的であり、おそらく安全でないためです。これはローカルでの開発のみを目的としており、本番環境では決して使用しないでください。

ここから

別のサーバーで静的ファイルを提供することはできませんか?

于 2013-03-05T16:12:55.587 に答える
-1

すべての回答を読んだ後、まだ誰かがこの問題を抱えている場合...

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

お役に立てれば。

于 2013-06-14T12:52:41.513 に答える