Форум сайта python.su
пробовал разворачивать django приложение по статье с хабра, все получилось кроме статики, css js и изображения.. Может кто тоже делоит этим методом, или хотябы приведет пример файла settings.py относительно настроек в статье?
Офлайн
Вот в этих строчках определяется, где должна лежать статика и по каким урл можно к ней обращаться.
root /home/myuser/web/myproject/static_content;
....
location ~ ^/(static|media)/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://myproject.ru;
break;
}
}
Отредактировано svas (Янв. 3, 2013 10:41:54)
Офлайн
все пути подправил в соответствии со своим проектом, подскажите относительно nginx конфина по каким url должен обращаться к статике? и нужно ли при этом что static пути в settings.py править?
Офлайн
Вам нужно поправить следующие настройки
https://docs.djangoproject.com/en/dev/ref/settings/#static-root
https://docs.djangoproject.com/en/dev/ref/settings/#static-url
Офлайн
вот структура проекта:
mysite
|-- manage.py
|-- mysite
|-- __init__.py
|-- settings.py
|-- urls.py
|-- wsgi.py
|-- myapp
|-- __init__.py
|-- models.py
|-- tests.py
|-- views.py
|-- static_content
|-- temaplate
|-- index.html
|-- static
|-- style.css
STATIC_URL = '/static_content/static/'
{% load static %}
<html>
<head>
<title>Hello Static Files</title>
<link rel="stylesheet" href="{% static 'style.css' %}" type="text/css">
</head>
<body>
<h1>Hello Static Files</h1>, {{hello}}
</body>
</html>
<html>
<head>
<title>Hello Static Files</title>
<link rel="stylesheet" href="/static_content/static/style.css" type="text/css">
</head>
<body>
<h1>Hello Static Files</h1>, hello
</body>
</html>
upstream myproject.com {
server localhost:12345 fail_timeout=0;
}
server {
listen 80;
server_name www.myproject.com;
rewrite ^/(.*) http://myproject.com/$1 permanent;
}
server {
listen 80;
client_max_body_size 4G;
server_name myproject.com;
access_log /home/vince/project/mysite/logs/myproject.access.log;
keepalive_timeout 5;
root /home/vince/project/mysite/myapp/static_content;
location / {
proxy_pass http://myproject.com;
}
location ~ ^/(static|media)/ {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
if (!-f $request_filename) {
proxy_pass http://myproject.com;
break;
}
}
}
Офлайн