Apache2: Erlaube / verbiete den Zugriff auf ein Verzeichnis nach Tageszeit


9

Angenommen, ich habe ein Verzeichnis, auf das ich den Zugriff auf diese Weise beschränken möchte, sodass Benutzer nur zwischen 6:00 und 18:00 Uhr auf das Verzeichnis zugreifen können. Ich weiß, wie man das mit PHP macht (mit time()%86400). Aber kann ich das komplett mit den integrierten Funktionen von Apache (.htaccess oder Server apache2.conf) oder anderen Mods machen?


1
Was ist, wenn die Benutzer über verschiedene Zeitzonen verteilt sind?
Gerald Schneider

Antworten:


13

Sie können den Zugriff auf bestimmte Verzeichnisse je nach Zeit verweigern, indem Sie den folgenden Code in Ihrer .htaccess-Datei in dem Verzeichnis ablegen, das Sie steuern möchten:

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

Die Stunden basieren auf 24 Stunden an einem Tag (0-23) und jede Stunde, die Sie den Zugriff verweigern möchten, sollte mit einem "|" getrennt werden.

Im obigen Beispiel konnte niemand von 1-3 Uhr auf das Verzeichnis zugreifen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.