django URL 模板标签相对 URL
基本上,我把我的应用程序部署在了一个虚拟专用服务器(VPS)上,使用了Apache和mod_wsgi。对于我的静态文件,我用了{% url %}这个模板标签,像这样:
<link href="{% static "bootstrap.min.css" %}" rel="stylesheet">
但是Django没有加载静态文件,因为它生成的是相对网址,所以我通过以下方式解决了这个问题:
<link href="/{% static "bootstrap.min.css" %}" rel="stylesheet">
不过现在当我访问/admin页面时,静态文件又没有加载,还是因为相对网址的问题。我该怎么解决呢?
这是我的mod_wsgi配置:
import os
import sys
import site
# Add the app's directory to the PYTHONPATH
sys.path.append('/home/tshirtnation')
sys.path.append('/home/tshirtnation/tshirtnation')
os.environ['DJANGO_SETTINGS_MODULE'] = 'tshirtnation.settings'
os.environ['PYTHON_EGG_CACHE'] = '/tmp'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
还有我的Apache配置:
#Listen 80
<VirtualHost *:80>
ServerAdmin marijus.merkevicius@gmail.com
ServerName 5.199.166.109
WSGIDaemonProcess ts threads=25
WSGIProcessGroup ts
Alias /static /home/tshirtnation/staticfiles
WSGIScriptAlias / /home/tshirtnation/index.wsgi
</VirtualHost>
如果你需要其他信息,请告诉我。
1 个回答
0
我也遇到了Django的管理后台静态文件的问题。这是我用的解决办法,希望对你有帮助。
下面是针对Nginx的配置:
location /static/admin {
alias "/pythonenv_path/lib/python3.2/site-packages/django/contrib/admin/static/admin";
}