Apache .htaccess timestamp

2

Estou tentando fazer algum mecanismo de cache onde eu crio arquivos de cache no php que tem nomes como: test_page_20110122_23.html (test_page_ [data do php ('Ymd_G)]. html)

O plano é servir esses arquivos sem php, estritamente usando apenas o apache (ou posterior nginx). Mas para fazer isso eu tenho que escrever uma regra de reescrita que tenha as variáveis atuais de data e hora, por exemplo:

RewriteCond / cache /% {REQUEST_FILENAME} _ {Ymd} {G} .html -f
RewriteRule ^ (. *) $ /Cache/$1
{Ymd}_{G}.html [L]

O único problema que tenho é como obter essas variáveis de tempo em .htacces

    
por SlasherZ 28.01.2011 / 10:33

2 respostas

3

Você pode fazer isso no apache usando mod_rewrite como este

RewriteCond /cache/%{REQUEST_FILENAME}_%{TIME_YEAR}%{TIME_MONTH}%{TIME_DAY}_%{TIME_HOUR}.html -f
RewriteRule ^(.*)$ /cache/$1_%{TIME_YEAR}%{TIME_MONTH}%{TIME_DAY}_%{TIME_HOUR}.html [L]
    
por 28.01.2011 / 11:42
1

Além da resposta de Lynxman:

No caso de %{TIME_MONTH} não funcionar, tente com %{TIME_MON} :

RewriteCond /cache/%{REQUEST_FILENAME}_%{TIME_YEAR}%{TIME_MON}%{TIME_DAY}_%{TIME_HOUR}.html -f
RewriteRule ^(.*)$ /cache/$1_%{TIME_YEAR}%{TIME_MON}%{TIME_DAY}_%{TIME_HOUR}.html [L]

de: link

    
por 24.05.2014 / 02:00