django1.3+中加载静态内容时出现问题;mod#wsgi+;apache2
当我试图在本地apache服务器(apache2+mod_wsgi)中部署静态文件(Django1.3)时,我遇到了静态文件的问题,问题仅限于静态内容其他部分正常[它在开发服务器中工作] 我的项目现在位于Ubandu桌面的“testcloud”文件夹中,我的项目 名称为Djangoapi,以下是我的项目结构: 桌面->测试云:django1.3+中加载静态内容时出现问题;mod#wsgi+;apache2,django,apache,static,mod-wsgi,django-1.3,Django,Apache,Static,Mod Wsgi,Django 1.3,当我试图在本地apache服务器(apache2+mod_wsgi)中部署静态文件(Django1.3)时,我遇到了静态文件的问题,问题仅限于静态内容其他部分正常[它在开发服务器中工作] 我的项目现在位于Ubandu桌面的“testcloud”文件夹中,我的项目 名称为Djangoapi,以下是我的项目结构: 桌面->测试云: DjangoApis ... mywebapp static templ
DjangoApis
...
mywebapp
static
templates
templatetags
urls.py
views.py
myapis
.....
Settings.py
STATIC_ROOT = '/home/jisson/Desktop/testcloud.aws/DjangoApis/
teststaticfiles/'
STATIC_URL = '/static/'
TEMPLATE_CONTEXT_PROCESSORS = (
"django.core.context_processors.media",
"django.core.context_processors.static",
)
TEMPLATE_DIRS = (
os.path.join(os.path.dirname(__file__),'templates').replace('\
\','/'),
)
INSTALLED_APPS = (
'DjangoApis.mywebapp',
'DjangoApis.myapis',
)
STATICFILES_DIRS = (
os.path.join(os.path.dirname(__file__),'static').replace('\
\','/'),
)
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
)
/etc/apache2/sites/enabled/djangoapi:
firebug的错误日志:
test.webapp (line 62)
"NetworkError: 404 NOT FOUND - http://test.webapp/css/styles/index.css/"
/css/s...ex.css/
"NetworkError: 404 Not Found - http://test.webapp/static/images/logo.jpg"
logo.jpg
"NetworkError: 404 Not Found - http://test.webapp/static/images/line.jpg"
line.jpg
"NetworkError: 404 Not Found - http://test.webapp/static/images/banner_phone.jpg"
.........................
注意我使用了collectstatic命令。
请帮助我解决这个问题,谢谢advace。仔细看,Apache试图从
/home/jisson/Desktop/testcloud.aws/djangoapi/staticjs
加载文件,而不是像您希望的那样从/home/jisson/Desktop/testcloud.aws/djangoapi/static/js
加载文件
如果collectstatic命令正确地收集了文件(在运行该命令后,它们出现在STATIC_根目录中),那么问题不在Django端,而是在Apache中,所以您应该检查您的Apache配置文件。@Nagisa,我不知道为什么会发生这种情况,现在以{STATIC_URL}css/styles/index.css的方式使用模板,我还尝试了{{static_URL}}/css/styles,它也会产生同样的错误。现在我的静态文件和模板在应用程序中,而不是在项目的根文件夹中。这会产生任何问题吗?我解决了这个问题,这是因为我在apache configWell中映射静态文件目录时犯了一个错误,然后我移动了我的注释来回答。接受它,使问题看起来已解决。
tail /var/log/apache2/error.log
[Sat Dec 10 03:16:36 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticjs,
referer: http://test.webapp/
[Sat Dec 10 03:16:36 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticjs,
referer: http://test.webapp/
[Sat Dec 10 03:16:36 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticjs,
referer: http://test.webapp/
[Sat Dec 10 03:16:36 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticjs,
referer: http://test.testapp/
[Sat Dec 10 03:16:45 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticimages,
referer: http://test.webapp/
[Sat Dec 10 03:16:45 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticimages,
referer: http://test.webapp/
[Sat Dec 10 03:16:45 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticimages,
referer: http://test.webapp/
[Sat Dec 10 03:16:45 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticimages,
referer: http://test.webapp/
[Sat Dec 10 03:16:45 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticimages,
referer: http://test.webapp/
[Sat Dec 10 03:16:45 2011] [error] [client 127.0.0.1] File does not
exist: /home/jisson/Desktop/testcloud.aws/DjangoApis/staticimages,
referer: http://testwebapp/
test.webapp (line 62)
"NetworkError: 404 NOT FOUND - http://test.webapp/css/styles/index.css/"
/css/s...ex.css/
"NetworkError: 404 Not Found - http://test.webapp/static/images/logo.jpg"
logo.jpg
"NetworkError: 404 Not Found - http://test.webapp/static/images/line.jpg"
line.jpg
"NetworkError: 404 Not Found - http://test.webapp/static/images/banner_phone.jpg"
.........................