Apache2: permitir / no permitir el acceso a un directorio por hora del día

9

Digamos que tengo un directorio al que quiero restringir el acceso de esa manera, para que los usuarios puedan acceder al directorio solo de 6 a.m. a 6 p.m. Sé cómo hacer esto usando PHP (usando time()%86400). ¿Pero puedo hacerlo completamente usando las funciones integradas de Apache (.htaccess o server apache2.conf) u otras modificaciones?

lkp111138
fuente
1
¿Qué pasa si los usuarios se distribuyen en diferentes zonas horarias?
Gerald Schneider

Respuestas:

13

Puede denegar el acceso a ciertos directorios dependiendo del tiempo colocando el siguiente código en su archivo .htaccess en el directorio que desea controlar:

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

Las horas se basan en 24 horas en un día (0-23) y cada hora que desee denegar el acceso debe separarse con un "|".

En el ejemplo anterior, nadie podía acceder al directorio de 1-3pm.

Anthony Fornito
fuente