PHP session_start() 覆蓋 HTTP Expires 標頭 (PHP session_start() overwrites HTTP Expires header)


問題描述

PHP session_start() 覆蓋 HTTP Expires 標頭 (PHP session_start() overwrites HTTP Expires header)

I am trying to set Expire header to 2 hours from access for text/html by using mod_expires like that:

<IfModule mod_expires.c>
   ExpiresActive on
   ExpiresDefault "access plus 2 hours"
   ExpiresByType text/html "access plus 2 hours"
</IfModule>

However when used with PHP:

session_start();

Expires header is being reset to:

Expires: Thu, 19 Nov 1981 08:52:00 GMT

Any ideas how to avoid that overwrite by session_start()?

‑‑‑‑‑

參考解法

方法 1:

OK, looks like have found an answer:

session_cache_limiter('public');
session_start();

does the trick, thanks.

(by MarcinMarcin)

參考文件

  1. PHP session_start() overwrites HTTP Expires header (CC BY‑SA 3.0/4.0)

#mod-expires #PHP #http-headers #session






相關問題

lighttpd 中靜態圖片的 expires.url 配置 (expires.url configuration for static images in lighttpd)

mod_expires.c 和 mod_headers.c 根據 google pagespeed 見解無法正常工作 (mod_expires.c and mod_headers.c not working according to google pagespeed insights)

Apache FilesMatch - 匹配正則表達式中的文件夾 (Apache FilesMatch - matching a folder in the regular expression)

mod_expires 為 3## 狀態碼發送 Cache-Control 標頭 (mod_expires sending Cache-Control headers for 3## status codes)

Apache:如何在未安裝 mod_expires 的情況下將 Expires 標頭添加到文件中 (Apache: How to add Expires headers to files without mod_expires installed)

PHP session_start() 覆蓋 HTTP Expires 標頭 (PHP session_start() overwrites HTTP Expires header)

添加過期標頭以提高使用 .htaccess 的頁面的性能 (Add expire header to improve the performance of page using .htaccess)

使用 apache mod_expires 緩存 php,php 文件的 mime 類型是什麼? (Use apache mod_expires to cache php, what is a mime type for php files?)







留言討論