我正在寻找一个简单的配置,以服务于特定文件夹内的所有文件和目录。
更准确地说,我试图为pinax /static_media/
文件夹和/media/
文件夹内的所有内容提供服务,因为它具有相同的url,最好是自动索引所有内容。
python manage.py build_media --all
,所以所有静态内容都在<project_name>/site_media/static
下我正在使用的当前配置:
server {
listen 80;
server_name QuadraPaper;
access_log /home/gdev/Projects/QuardaPaper/access_log.log;
location ^*/site_media/*$
{
autoindex on;
access_log off;
root /home/gdev/Projects/QuardaPaper/site_media;
}
location /media/ {
autoindex on;
root /home/gdev/Projects/QuardaPaper/media/;
}
来自不同网站的所有不同的配置说明真的让我很困惑,例如
如何使用NGINX直接提供所有现有的静态文件,但将其余的代理到后端服务器。
http://coffeecode.net/archives/200-Using-nginx-to-serve-static-content-with-Evergreen.html https://serverfault.com/q/46315/91723 http://wiki.nginx.org/Pitfallshttp://pinaxproject.com/docs/0.7/media/ref-media-devel
环境信息:- Xubuntu 10.04在VirtualBox上运行
- nginx 1.1.4
- pinax 0.72 django 1.0.4
- fastcgi用于通过nginx运行django
我找到了答案,正如我猜想的那样简单。必须设置一次根目录,并使用子目录作为位置
server {
listen 80;
server_name QuadraPaper;
access_log /home/gdev/Projects/QuardaPaper/access_log.log;
root /home/gdev/Projects/QuardaPaper;
location /site_media/ {
autoindex on;
access_log off;
}
location /media/ {
autoindex on;
}
}
我从
得到了一个线索Nginx没有't service static