2016-09-02 57 views
2

請原諒我,如果這是一個微不足道的問題,但沒有人知道(與文檔)如果htaccess日期和時間server variables(例如TIME_MIN,TIME_HOUR等)代表服務器時間或UTC?Htaccess和時間變量 - 服務器時間或UTC?

據最新0​​:

TIME_HOUR的當前時間的小時部分(0,...,23)

這是什麼 「當前時間」?服務器時間或UTC?我試着用crtl + f和「UTC」,「GMT」,「服務器時間」搜索文檔,但沒有匹配。谷歌也沒有幫助。我懷疑這是服務器的時間,但我希望寫這樣的(從凌晨1點如阻止訪問上午8點)的規則時,必須確保:

RewriteCond %{TIME_HOUR} ^(01|02|03|04|05|06|07) 
RewriteRule . - [F] 

編號:http://httpd.apache.org/docs/current/mod/mod_rewrite.html

編號:http://httpd.apache.org/docs/current/expr.html#vars

回答

1

mod_rewrite.c

if (!strcmp(var, "TIME_HOUR")) { 
    apr_time_exp_lt(&tm, apr_time_now()); 
    return apr_psprintf(r->pool, "%02d", tm.tm_hour); 
} 

apr_time_exp_lt:將一個時間到它的人可讀組件在當地時區

一點實驗也驗證了它。

+0

尋找源頭的聰明想法。我希望得到官方文件,但這是最好的。作爲一個方面說明,「%02d」部分不同於官方文檔,說明輸出將是(0,...,23)。這意味着,並且有意義的是,前9個小時將填充零。再次感謝。 – Drakes

+0

好吧,鑑於文檔中的錯誤,它不是「下一個最好的東西」,它是**最好的東西:) –