簡體   English   中英

從mod_rewrite獲取mod_headers中的環境變量

[英]Getting environment variable in mod_headers from mod_rewrite

我試圖根據環境變量並根據我應該使用env條件的文檔發送標頭。

但是,它不起作用。 這是我的服務器配置:

RewriteRule ([^\[]+)(?:\[immutable\].)js$ $1.js [NC,QSA,L,E=immutable]

Header set Cache-Control "immutable, no-transform, public, max-age=31536000" env=immutable

我已驗證,如果刪除env=immutable ,則標題將發送所有響應。

預期結果是:

  • foo.immutable.js應該將foo.js標頭提供foo.js
  • foo.js也應提供foo.js但不使用Cache-Control標頭

關於為什么它不起作用或者是否有辦法在ssl_access_log中轉儲環境進行調試的任何想法?

嘗試檢查該REDIRECT_immutable

由於您實際上是進行替換的,並且您的重寫似乎是在每個目錄的上下文中,因此會發生內部重定向。 因此,在mod_headers實際上在最終URL的內部重定向上運行時,您的envvar將重命名為REDIRECT_immutable。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM