Apache HTTP Server 2.4 版
說明 | 基於 Cookie 的會話支援 |
---|---|
狀態 | 擴充套件 |
模組識別碼 | session_cookie_module |
原始檔 | mod_session_cookie.c |
相容性 | 適用於 Apache 2.3 及後續版本 |
會話模組使用 HTTP Cookie,因此會面臨跨網站指令碼攻擊的風險,或揭露客戶端可能有的私人資訊。啟用伺服器的會話功能前,請務必考量相關風險。
mod_session
的這個子模組可在 HTTP Cookie 中,提供儲存使用者會話至遠端瀏覽器的支援。
使用 Cookie 儲存會話後,伺服器或伺服器群組就無需在本地端儲存會話,或透過合作共用會話,對於伺服器會話資源過於密集的高流量環境來說十分有用。
如果需要會話隱私,可在將會話寫入用戶端之前,使用 mod_session_crypto
模組加密會話內容。
如需瞭解會話介面的詳細資料,請參閱 mod_session
模組的說明文件。
若要建立一個簡易的會話並將其儲存在名為 session 的 Cookie,請按照下列方式設定會話
Session On SessionCookieName session path=/
有關如何在 CGI 應用程式中設定會話以讀取和寫入會話的詳細範例,請參閱 mod_session
的範例區段。
有關如何使用會話儲存使用者名稱和密碼詳細資料的說明文件,請參閱 mod_auth_form
模組。
說明 | 用於儲存會話的 RFC2109 Cookie 的名稱和屬性 |
---|---|
語法 | SessionCookieName name attributes |
預設值 | 無 |
內容 | 伺服器設定、虛擬主機、目錄、.htaccess |
狀態 | 擴充套件 |
模組 | mod_session_cookie |
SessionCookieName
指令會指定符合 RFC2109 標準的 Cookie 名稱和選用屬性,會話會儲存在這個 Cookie 中。會使用 Set-Cookie
HTTP 標頭設定 RFC2109 Cookie。
可以指定選用的 Cookie 屬性清單,如下面的範例。這些屬性會依其原本的樣子插入 Cookie 中,Apache 不会加以詮釋。請確認您的屬性定義符有正確,符合 Cookie 規範。
Session On SessionCookieName session path=/private;domain=example.com;httponly;secure;version=1;
說明 | 用於儲存會話的 RFC2965 Cookie 的名稱和屬性 |
---|---|
語法 | SessionCookieName2 name attributes |
預設值 | 無 |
內容 | 伺服器設定、虛擬主機、目錄、.htaccess |
狀態 | 擴充套件 |
模組 | mod_session_cookie |
SessionCookieName2
指令會指定符合 RFC2965 標準的 Cookie 名稱和選用屬性,會話會儲存在這個 Cookie 中。會使用 Set-Cookie2
HTTP 標頭設定 RFC2965 Cookie。
可以指定選用的 Cookie 屬性清單,如下面的範例。這些屬性會依其原本的樣子插入 Cookie 中,Apache 不会加以詮釋。請確認您的屬性定義符有正確,符合 Cookie 規範。
Session On SessionCookieName2 session path=/private;domain=example.com;httponly;secure;version=1;
說明 | 控制是否從接收的 HTTP 標頭中移除會話 Cookie |
---|---|
語法 | SessionCookieRemove On|Off |
預設值 | SessionCookieRemove Off |
內容 | 伺服器設定、虛擬主機、目錄、.htaccess |
狀態 | 擴充套件 |
模組 | mod_session_cookie |
SessionCookieRemove
標記控制是否會在要求處理過程中從標頭中移除包含會話的 Cookie。
在 Apache 伺服器擔任後端原始伺服器的前端伺服器時,會對反向代理產生影響,將會話 Cookie 的內容公開給後端伺服器可能會造成潛在的隱私權侵犯問題。當設為啟用狀態時,會話 Cookie 會從接收的 HTTP 標頭中移除。