2015-10-19 39 views
1

我在我的雲實例上安裝了nginx 1.9.4。但是,啓用粘性模塊時,我無法使用「sudo service nginx start」啓動nginx。但是,當這被刪除,我能夠開始它。有沒有人知道是什麼原因導致了這個問題?啓用粘性模塊無法啓動nginx 1.9.4

upstream uesconf 
{ 

sticky; 

    server xxx.xxx.xxx.xxx:9443; 
    server xxx.xxx.xxx.xxx:9443; 
    server xxx.xxx.xxx.xxx:9443; 
    server xxx.xxx.xxx.xxx:9443; 


} 

server { 

    listen 80; 
    server_name xxx.xxx.xxx; 
    rewrite ^/(.*) http://xxx.xxx.xxx/$1 permanent; 


    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    proxy_http_version 1.1; 

} 

server { 

    listen 443; 
    server_name xxx.xxx.xxx; 

    ssl on; 
    ssl_certificate /etc/nginx/conf.d/keys/xxx.crt; 
    ssl_certificate_key /etc/nginx/conf.d/keys/xxx.key; 

    proxy_set_header Upgrade $http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    proxy_http_version 1.1; 
    client_max_body_size 20M; 


    location/{ 
     index index.html; 
     proxy_set_header X-Forwarded-Host $host; 
     proxy_set_header X-Forwarded-Server $host; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 

     proxy_set_header Host $http_host; 
     proxy_read_timeout 5m; 
     proxy_send_timeout 5m; 

     proxy_pass https://uesconf; 
     proxy_redirect https://uesconf https://xxx.xxx.xxx/; 

    } 

} 
+0

我之所以需要一個粘性會話是因爲負載平衡器不記得服務器IP發送請求到後端,因此用戶不能登錄而不使用強制'記住我' – Pubudu

+0

你是否檢查過w ith'nginx -t'命令? –

+0

@AlexeyTen是的。它給了我下面的確認信息。 nginx:配置文件/etc/nginx/nginx.conf語法不錯 nginx:配置文件/etc/nginx/nginx.conf測試成功 – Pubudu

回答

1

而不是使用粘性會話嘗試根據每個用戶來處理標準的方式來重複使用相同的服務器IP:

upstream backend { 
    hash $remote_addr consistent; 

    server backend1.example.com; 
    server backend2.example.com; 
} 

你的情況,這將是如下:

upstream uesconf { 
    hash $remote_addr consistent; 
    server xxx.xxx.xxx.xxx:9443; 
    server xxx.xxx.xxx.xxx:9443; 
    server xxx.xxx.xxx.xxx:9443; 
    server xxx.xxx.xxx.xxx:9443; 
} 
+0

謝謝@Anatoly,這個問題解決了。 – Pubudu

+0

我做過了,一旦達到聲望級別15就會出現:) – Pubudu

+0

儘管這解決了最初的問題,但通過nginx加載頁面和會話超時太快仍然非常緩慢。有沒有解決方法? – Pubudu