0

myproject_django$ gunicorn_django为我的网站提供服务,静态文件除外。任何想法为什么?我正在使用 django 1.3 从虚拟环境中运行它。

项目树

myproject_django
├── core
│   ├── admin.py
│   ├── __init__.py
│   ├── models.py
│   ├── tests.py
│   ├── views.py
├── __init__.py
├── manage.py
├── settings.py
├── static
│   ├── css
│   │   ├── base.css
│   │   ├── layout.css
│   │   └── skeleton.css
│   └── media
│       ├── pek.ico
│       ├── pek.png
│       └── pek_symbol.png
├── templates
│   └── core
│       ├── 404.html
│       ├── 500.html
│       ├── home.html
│       └── install.html
├── urls.py

settings.py 的潜在相关部分

PROJECT_PATH = os.path.dirname(os.path.abspath(__file__))

MEDIA_ROOT = ''

MEDIA_URL = '/static/media'

STATIC_ROOT = os.path.join(PROJECT_PATH,'static')

STATIC_URL = '/static/'

STATICFILES_DIRS = (
    os.path.join(PROJECT_PATH, 'static'),
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'core',
    'gunicorn',
    'django.contrib.admin',
)
4

1 回答 1

3

您可能需要配置 nginx 或 apache 来处理静态文件。现在尝试运行 python manage.py collectstatic 并将以下代码添加到 urls.py

urls.py

if settings.DEBUG:
    urlpatterns += patterns('',
            (r'^static/media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT, 'show_indexes':True}),
        )
    urlpatterns += patterns('',
                 (r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT, 'show_indexes':True}),
            )
于 2012-08-17T12:43:45.073 回答