Djangoアプリのデプロイ中。静的ファイルに問題があります。静的ディレクトリにJSファイルとCSSファイルがあります。しかし、ブラウザはそれらのファイルを見つけることができません。サーバーOSと同じubuntuであるローカルマシン上に同じファイルと設定があり、ローカルで作業しています。同じ設定ですが、その静的ディレクトリとファイルの設定を以下に貼り付けています。
# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = ''
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash.
# Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
MEDIA_URL = ''
# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
STATIC_ROOT = os.path.join(ROOT_PATH,'static')
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = '/static/'
# Additional locations of static files
STATICFILES_DIRS =(
os.path.join(ROOT_PATH,'static'),
)
# List of finder classes that know how to find static files in
# various locations.
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# 'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
ここで、上記のコードのルートパスは、その前に定義されています。
import os
#from django.contrib.sites.models import Site
ROOT_PATH = os.path.dirname(__file__)
私はapache2でmod_wsgiを使用しています。私の理解では、/ somefoldernameをロードしているときにファイルが見つかるはずです。その後、ブラウザーはそのディレクトリに移動するはずですが、問題のある場所を取得できませんでした。環境やwsgi設定などについて知るために、ここでフォローしているのは、wsgiファイルの詳細とその動作方法を投稿した質問です。サーバーに移行した後のDjangoサイトでの500サーバーエラー
サーバー上のsyncdbコマンドでも、アプリやその他のテンプレートやモジュールなどを見つける際に問題が発生することがよくあります。テンプレートの場合、ルートパスを追加すると、wsgiファイルにプロジェクトパスも追加されて動作し始めましたが、静的ファイルの問題は解決されていません。