負載平衡服務提供會話保持功能。開啟會話保持功能後,負載平衡會將會話期間內來自同一用戶端的訪問請求分發到同一台後端伺服器上進行處理。

四層監聽的會話保持是基於IP地址的會話保持,負載平衡監聽器會將來自同一IP地址的請求轉寄到同一個後端ECS上;而七層監聽是基於Cookie的會話保持。

如果您選擇使用重寫Cookie的方式,需要在後端伺服器上配置Cookie。假如您的負載平衡服務地址下有兩個網域名稱:vip.a.com和img.a.com,當您想為vip.a.com配置會話保持時,您可以設定Cookie名稱為name,然後在後端伺服器上為網域名稱vip.a.com設定key為name的Cookie。

本文檔介紹了如何在Apache、Nginx和Lighttpd應用伺服器上配置Cookie。

Apache

  1. 開啟httpd.conf設定檔,確保如下配置沒有被注釋。
    LoadModule usertrack_module modules/mod_usertrack.so
  2. 在virtual host中添加以下配置。
     CookieName name
     CookieExpires "1 days"
     CookieStyle Cookie
     CookieTracking on

Nginx

參考以下配置,設定Cookie。

server {
    listen 8080;
    server_name wqwq.example.com;
    location / {
      add_header Set-Cookie name=xxxx;
        root   html;
        index  index.html index.htm;
    }
}

Lighttpd

參考以下配置,設定Cookie。

    server.modules  = ( "mod_setenv" )
    $HTTP["host"] == "test.example.com" {
          server.document-root = "/var/www/html/"
          setenv.add-response-header = ( "Set-Cookie" => "name=XXXXXX"      }
    }