1.alias虚拟目录配置下,访问http://www.colorgg.com/huan/a.html实际指定的是/home/www/huan/a.html
示例一
location /huan/ {
alias /home/www/huan/;
}
alias指定的目录后面必须要加上"/",即/home/www/huan/不能改成/home/www/huan
2.nginx就会去/home/www/huan下寻找http://www.colorgg.com/huan的访问资源,两者配置后的访问效果是一样的!
location /huan/ {
root /home/www/;
}
3.STATIC_URL, STATIC_ROOT, STATICFILES_DIRS
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
python manage.py collectstatic做了什么
Collects the static files into STATIC_ROOT.
翻译:把静态文件收集到 STATIC_ROOT中。
STATIC_URL的作用
URL to use when referring to static files located in STATIC_ROOT.
Example: “/static/” or “http://www.example.com/static/”
翻译:STATIC_URL用于引用STATIC_ROOT所指向的静态文件。
STATIC_ROOT的作用:
当执行collectstatic命令时,会将静态文件拷贝到STATIC_ROOT所指定的目录,MEDIA_ROOT同理
nginx的 location /static/应该指向的是 STATIC_ROOT所在的目录
#以下不是必须的
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
4. nginx的配置[root@slave1 conf.d]# cat myserver.conf
server {
listen 80;
client_max_body_size 4G;
server_name example.com 121.211.117.79 www.example.com;
keepalive_timeout 5;
access_log /var/log/nginx/access.log ;
error_log /var/log/nginx/errors.log warn;
location / {
proxy_pass http://app_server1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_redirect off;
}
location /media {
alias /opt/sudjango/nginxdjango/media;
}
location /static {
alias /opt/sudjango/nginxdjango/static;
}
error_page 500 502 503 504 /500.html;
location = /500.html {
root /path/to/app/current/public;
}
}
5. upstream.conf
[root@slave1 conf.d]# cat wltupstream.conf
upstream app_server1 {
server 10.0.0.11:8000 ;
sticky;
}
[root@slave1 conf.d]#
用一个例子来演示会更加清晰