Nginx를 통한 Mumble Django - 구성 파일이 다시 작성될 때 무한 반복됩니다.

Nginx를 통한 Mumble Django - 구성 파일이 다시 작성될 때 무한 반복됩니다.

Apache 대신 Nginx를 구성하여 Mumble Django를 클라이언트에 제공하는 데 약간의 문제가 있습니다. 나에겐 가상 호스트가 있다Apache와 Lighttpd 모두에 대한 구성- 클릭 수를 줄이기 위해 여기에 나란히 놓겠습니다 :). Apache2는 WSGI를 활용하여 Django Python을 CGI로 실행했습니다. 내가 보기에 Lighttpd는 Nginx/PHP-FPM처럼 작동합니다.

전용 Apache2 가상 호스트 - 구성:

<VirtualHost *:80>
        ServerName              example.com
        ServerAlias             www.example.com

        Alias                   /static/admin/  /usr/share/pyshared/django/contrib/admin/static/admin/
        Alias                   /static/        /srv/mumble-django/htdocs/
        Alias                   /mumble/media/  /srv/mumble-django/pyweb/mumble/media/

        WSGIScriptAlias         /               /srv/mumble-django/mumble-django.wsgi
        WSGIDaemonProcess       mumble-django threads=25
        WSGIProcessGroup        mumble-django
        WSGIScriptReloading     Off

        # Cache optimization - not necessarily needed for MD, but nice to have :)
        FileETag None
        <IfModule mod_headers.c>
                Header unset ETag

                <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
                        Header set Cache-Control "max-age=86400, must-revalidate"
                </FilesMatch>

                <IfModule mod_deflate.c>
                        # compress content
                        AddOutputFilterByType DEFLATE text/html text/plain text/css text/javascript image/png image/jpeg image/gif
                        # properly handle requests coming from behind proxies
                        Header append Vary User-Agent
                </IfModule>
        </IfModule>
</VirtualHost>

Lighttpd 구성:

server.document-root = "/usr/local/www/mumble-django"
  alias.url = (
    "/static" => "/usr/local/www/mumble-django/htdocs/",
    "/media"  => "/usr/local/lib/python2.6/site-packages/django/contrib/admin/media/"
  )
  url.rewrite-once = (
    "^(/media.*)$" => "$1",
    "^(/static.*)$" => "$1",
    "^(/.*)$" => "/mumble-django.fcgi$1",
  )
  fastcgi.server = (
    "/mumble-django.fcgi" => (
      "" => (
        "socket" => "/tmp/mumble-django.sock",
        "check-local" => "disable"
      )
    )
  )

그리고 제가 변환한 부끄러운 Nginx 구성 파일은 다음과 같습니다.

server {
    listen 80;
    server_name mumble-web-ui.imanov.name;
    server_name_in_redirect on; # SEO: Avoid different host-names!
    server_tokens off;
    root /home/shehi/www-data/subdomains/mumble_web_ui;
    merge_slashes on;
    msie_padding on;
    client_max_body_size 64M;
    index index.php;
    error_log /home/shehi/logs/error_log debug;

    location /static
    {
        alias /home/shehi/www-data/subdomains/mumble_web_ui/htdocs/;
        internal;
    }

    location /media
    {
        alias /home/shehi/www-data/subdomains/mumble_web_ui/pyweb/mumble/media/;
        internal;
    }

    location /
    {
#       rewrite ^(/.*)$ /mumble-django.fcgi$1 last;
#       try_files $uri $uri/ /mumble-django.fcgi$uri;
        gzip on;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_script_name;
        include fastcgi_params;
    }
}

분명히 내 구성은 무한 루프로 끝납니다.

http://mumble-web-ui.imanov.name/mumble/mumble/.. .../mumble/mumble/ 

간단히 말해서, 내가 여기서 뭘 잘못하고 있는 걸까요? 미리 도움을 주신 모든 분들께 감사드립니다!

관련 정보