2010-10-21 20 views
1

我試圖使用nginx作爲一個簡單的負載平衡器每雅各布·卡普蘭,莫斯的例子Django的: http://github.com/jacobian/django-deployment-workshop http://python.mirocommunity.org/video/1689/pycon-2010-django-deployment-w的Django nginx的和追加斜線問題

如果我停下nginx的和有阿帕奇偵聽端口80的一切工作正常。如果我有apache監聽nginx,我的網址就會中斷。

當nginx運行時,http://184.106/admin/works,但是http://184.106/admin(缺少結束斜線)休息。它重定向到Web服務器的名稱http://web1/admin/

我知道這是nginx導致的問題,因爲重定向在Apache和Django dev服務器中工作正常。

這裏是正在運行的nginx.conf:

# Nginx conf (/etc/nginx/nginx.conf). 

# 
# Basic setup 
# 

user www-data; 
error_log /var/log/nginx/error.log; 
pid /var/run/nginx.pid; 

# 
# Event/worker setup. 
# 

worker_processes 4; 
events { 
    worker_connections 100; 
} 

# 
# HTTP configuration 
# 

http { 
    include /etc/nginx/mime.types; 

    # HTTP upstream for load balancers. 
    # Replace the IPs below with IPs (or names) of your upstream Apaches 
    upstream sitename { 
     server 10.X.X.X:8000; 
     server 10.X.X.X:8000; 
    } 

    # The actual HTTP sever. 
    server { 
     listen 80; 

     # Don't proxy static files like robots.txt and favicon.ico. 
     location ~ ^/(favicon.ico|robots.txt|sitemap.xml)$ { 
      alias /home/web/static/$1; 
     } 

     # Serve media directly out of Nginx for performance 
     location /media { 
      alias /home/media; 
     } 

     # Proxy everything else to the backend 
     location/{ 
      proxy_pass http://sitename; 
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
      add_header X-Handled-By $upstream_addr;  
     } 
    } 
} 
+0

假設你在某個地方的'server'塊上有一個'server_name'安全嗎?這是我看到的第一個奇怪的事情,但我不明白它會如何導致你描述的問題。 – pjmorse 2010-10-21 23:06:03

回答

1

我有,你有完全相同的問題,下面雅各布的nginx的例子,並沒有一個斜槓會導致不正確的重定向。 pjmorse的迴應幫助了我,我在服務器塊(server {server_name:vasir.net; ....)中設置了server_name並解決了問題。然而,我不得不重新啓動服務器,並且

+0

對不起,只是回到這個。你在哪裏設置服務器名稱?我在nginx配置中的「server」指令中嘗試過,但它會導致錯誤。 – chris 2010-12-16 20:06:39

+0

感謝您的幫助。有幾個問題,所以要在這裏發佈。將服務器名稱放入nginx.conf中的「server {」指令之後「listen 80;」它會看起來像「server_name yourdomain.com別名www.yourdomain.com;」 – chris 2010-12-16 21:02:46