mod_wsgi 4.5.15とPython 3.5.3を仮想環境として使用してApache 2.4.7にDjango 1.8.17アプリケーションを提供するように奮闘しています。これは私がマシン上に持っている唯一の仮想環境です(Linux Mint 17.3)。Apache、Django、およびmod_wsgiでレンダリングされないCSS CSS
すべての動的コンテンツが送信されますが、静的コンテンツのすべてではありません。
私のプロジェクトにはいくつかのアプリケーションがあります。私はcollectstaticを実行すると、想定されているように1つの正しい場所にそれらをすべて配置しているようです。私はそれらすべてをチェックし、彼らはすべてそこにいる。
"sudo chown -R www-data:www-data ..."を使用してその場所のアクセス許可のすべてのファイルを指定しました。
Apache仮想ホストファイルを変更して、絶対パスを使用して「メディア」と「静的」ディレクトリに別名を追加しました。
それが機能しなかった場合、私は
home/magic-rat/ | |_____+virtualenvs | | | |+ektropy_project | | | |+lib | | | |+python3.5 | | | |+site_packages | |_____+ektropy_project | |-manage.py |+static (for pinax) | | | |+dist | |+src | |+ektropy_project | |-wsgi.py | |+site_media | |+media STATIC HERE=> |+static | |+admin |+bootstrap |+css |+fonts |+js |+pinax
Apacheのバーチャルホスト:関連のある
Alias /media /home/magic-rat/ektropy_project/ektropy_project/site_media/media
<Directory /home/magic-rat/ektropy_project/ektropy_project/site_media/media>
Require all granted
</Directory>
Alias /static /home/magic-rat/ektropy_project/ektropy_project/site_media/static
<Directory /home/magic-rat/ektropy_project/ektropy_project/site_media/static>
Require all granted
</Directory>
WSGIDaemonProcess ektropy_project python-home=/home/magic-rat/virtualenvs/ektropy_project python-path=/home/magic-rat/ektropy_project
WSGIProcessGroup ektropy_project
WSGIApplicationGroup %{GLOBAL}
WSGIScriptAlias//home/magic-rat/ektropy_project/ektropy_project/wsgi.py
<Directory /home/magic-rat/ektropy_project/ektropy_project>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
Settings.pyの部分:
import os
PROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
PACKAGE_ROOT = os.path.abspath(os.path.dirname(__file__))
BASE_DIR = PACKAGE_ROOT
MEDIA_ROOT = os.path.join(PACKAGE_ROOT, "site_media", "media")
MEDIA_URL = "/site_media/media/"
STATIC_ROOT = os.path.join(PACKAGE_ROOT, "site_media", "static")
STATIC_URL = "/site_media/static/"
# Additional locations of static files
STATICFILES_DIRS = [
os.path.join(PROJECT_ROOT, "static", "dist"),
]
# 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",
]
ROOT_URLCONF = "ektropy_project.urls"
WSGI_APPLICATION = "ektropy_project.wsgi.application"
私は本当に迷っています。
"django.contrib.staticfilesは"、スローされたエラーがない "INSTALLED_APPS"
です。 Apacheのエラーログはきれいです。 Apacheは静的コンテンツを見ることはできません。
パーフェクト。ありがとう、グラハム。私は今起きている。 – Pat