मैंने कई संबंधित पोस्टों को देखा है लेकिन कुछ भी मदद नहीं कर रहा है।
प्रासंगिक जानकारी:डीजेगो स्थिर फाइलों की सेवा करते समय अपाचे 403
Django संस्करण - 1,4
अपाचे संस्करण - 2,2
अजगर संस्करण - 2,7
ओएस - Xubuntu 12,04
डीबी - Mysql
मैं अपाचे को django ऐप और स्थिर फ़ाइलों दोनों की सेवा करने की कोशिश कर रहा हूं। यह मुद्दा व्यवस्थापक साइट में स्पष्ट हो गया है जो किसी भी सीएसएस शैलियों या छवियों को प्रदर्शित करने में विफल रहता है। मेरे व्यवस्थापक साइट वर्तमान में लगता है कि:
(ठीक है, मैं एक छवि को शामिल किया है, लेकिन ढेर अतिप्रवाह मुझे नहीं लगा कि यह हर किसी ने इस विषय पर पोस्ट किया जाता है के व्यवस्थापक पृष्ठ की तरह दिखता है यह कहना पर्याप्त, Apache not serving django admin static files देखते हैं।)
मेरे लॉगिन पेज और कुछ गतिशील सामग्री जैसे अनुप्रयोग टुकड़े ठीक काम करते हैं, लेकिन जब मैं स्थिर सामग्री की सेवा करने का प्रयास करता हूं, तो मुझे 403 त्रुटि मिलती है। इसके अतिरिक्त जब मैं मैन्युअल रूप से व्यवस्थापक पृष्ठ का गाया एचटीएमएल देख रही है और मैं एक 403 त्रुटि मिलती है
http://localhost/static/admin/css/base.css
पर स्टाइलशीट करने के लिए लिंक पर क्लिक करके स्टाइलशीट करने के लिए नेविगेट करने के लिए प्रयास करें। मैं टर्मिनल में वहां नेविगेट कर सकता हूं, और फ़ोल्डर के लिए अनुमतियों को बदल सकता हूं ताकि अपाचे के www-data उपयोगकर्ता को स्पष्ट रूप से सभी फ़ाइलों तक पहुंच हो।
#AliasMatch ^/([^/]*\.css) /usr/local/wsgi/static/styles/$1
Alias /media/ "/usr/local/wsgi/media/"
Alias /static/ "/usr/local/wsgi/static/"
<Directory "/usr/local/wsgi/static">
Order deny,allow
Allow from all
</Directory>
<Directory "/usr/local/wsgi/media">
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias/"/home/noah/Documents/Web/Basic/apache/django.wsgi"
<Directory "/usr/local/wsgi/scripts">
Order allow,deny
Allow from all
</Directory>
एक दोस्त की सलाह पर मैं अपने को ऊपर साइटों से उपलब्ध डिफ़ॉल्ट की नकल की:
यहाँ मेरी httpd.conf के प्रासंगिक टुकड़े हैं
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www
TypesConfig /etc/mime.types
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/noah/Documents/Web/Basic/apache/ >
Options -Indexes FollowSymLinks
AllowOverride AuthConfig FileInfo
Order allow,deny
Allow from all
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
SetEnv DJANGO_SETTINGS_MODULE Basic.settings
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
#AliasMatch ^/([^/]*\.css) /usr/local/wsgi/static/styles/$1
Alias /media "/usr/local/wsgi/media/"
Alias /static "/usr/local/wsgi/static/"
<Directory "/usr/local/wsgi/static">
Order deny,allow
Allow from all
</Directory>
<Directory "/usr/local/wsgi/media">
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias/"/home/noah/Documents/Web/Basic/apache/django.wsgi"
<Directory "/usr/local/wsgi/scripts">
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
यहाँ है मेरी django.wsgi
import os
import sys
path = '/home/noah/Documents/Web/Basic'
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'Basic.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
और अंत में, यहाँ मेरी settings.py है:
# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = '/usr/local/wsgi/media/'
# 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 = 'http://localhost/media/'
# 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 = '/usr/local/wsgi/static/'
# URL prefix for static files.
# Example: "http://media.lawrence.com/static/"
STATIC_URL = 'http://localhost/static/'
# Additional locations of static files
STATICFILES_DIRS = (
# 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.
)
# 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',
)
# Make this unique, and don't share it with anybody.
SECRET_KEY = 'bmc&epl=#u)r3elkvj#@90*cji*z^[email protected](ih'
# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
# 'django.template.loaders.eggs.Loader',
)
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
# Uncomment the next line for simple clickjacking protection:
# 'django.middleware.clickjacking.XFrameOptionsMiddleware',
)
ROOT_URLCONF = 'Basic.urls'
# Python dotted path to the WSGI application used by Django's runserver.
WSGI_APPLICATION = 'Basic.wsgi.application'
मेरे Django परियोजना में ~/दस्तावेज़/वेब/जो/var/www सांकेतिक रूप से लिंक है 'मूल के जीवन/
किसी भी मदद की बहुत सराहना की है, और अगर आप किसी भी अधिक फ़ाइलों की जरूरत है मुझे पता है/जानकारी।
संभावित डुप्लिकेट [अपाचे django व्यवस्थापक स्थिर फाइलों की सेवा नहीं कर रहा है] (http://stackoverflow.com/questions/9500598/apache-not-serving-django-admin-static-files) – dm03514
अंतर django संस्करण में निहित है अलग-अलग विशेषताएं हैं, और वहां समाधान सिर्फ मेरे लिए काम नहीं करता है। – noah