Nginx,一个简单的配置,用于服务目录中的所有文件和目录中的所有目录



我正在寻找一个简单的配置,以服务于特定文件夹内的所有文件和目录。

更准确地说,我试图为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/Pitfalls

http://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

相关内容

  • 没有找到相关文章

最新更新