Apache2: permitir / impedir o acesso a um diretório por hora no dia


9

Digamos que eu tenho um diretório que quero restringir o acesso dessa maneira, para que os usuários possam acessar o diretório apenas entre as 6:00 e as 18:00. Eu sei como fazer isso usando PHP (usando time()%86400). Mas posso fazê-lo inteiramente usando as funções internas do Apache (.htaccess ou servidor apache2.conf) ou outros mods?


1
E se os usuários estiverem espalhados por diferentes fusos horários?
Gerald Schneider

Respostas:


13

Você pode negar o acesso a determinados diretórios, dependendo da hora, colocando o seguinte código no arquivo .htaccess no diretório que deseja controlar:

RewriteCond %{TIME_HOUR} ^(13|14|15)$
RewriteRule ^.*$ - [F,L]

As horas são baseadas em 24 horas em um dia (0-23) e cada hora que você deseja negar o acesso deve ser separada com um "|".

No exemplo acima, ninguém poderia acessar o diretório das 13h às 13h.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.