A useful trick for implementing maintenance windows and redirects without having to use a php or similar script is to check date and time in .htaccess files or use it to build a redirect url.
Date and time values in .htaccess come in the form %{TIME_XXXX} where XXXX is the type of date or time you want.
So if you want to redirect a generic url to one which contains today’s date, you might use:
 
 RewriteRule ^posts/today$ /posts/%{TIME_YEAR}-%{TIME_MON}-%{TIME_DAY}
 
That would result in /posts/today being redirected to something like /posts/2015-08-27
If you wanted redirect a page after a date (and time) is passed you could use something like the following, where if the date and time is passed 9am on 27th August 2015 the redirect will happen. We use a simple number comparison of turning the date into an integer and then comparing it.
 
 RewriteCond %{TIME_YEAR}%{TIME_MON}%{TIME_DAY}%{TIME_HOUR} >2015082709
 RewriteRule ^$ /destination/url.html [R=301,L]
 
The following would only redirect until a specific time (10.22am on 27th August 2015)
 
 RewriteCond %{TIME_YEAR}%{TIME_MON}%{TIME_DAY}%{TIME_HOUR}%{TIME_MIN} <201508271022
 RewriteRule ^$ /destination/url.html [R=301,L]
 
The following would only redirect between two specific dates (20th July 2015 and 27th August 2015)
 
 RewriteCond %{TIME_YEAR}%{TIME_MON}%{TIME_DAY} <20150828
 RewriteCond %{TIME_YEAR}%{TIME_MON}%{TIME_DAY} >20150719
 RewriteRule ^$ /destination/url.html [R=301,L]
 
The options you have for %{TIME_XXXX} values are:
 
 TIME_YEAR // current four-digit year
 TIME_MON // current month
 TIME_DAY // current day of month
 TIME_HOUR // current hour (24 hour clock) of day
 TIME_MIN // current minute of hour
 TIME_SEC // current second of minute
 TIME_WDAY // current week-day
 TIME // a formatted string representing the date and time down to seconds. e.g. 20150827112234
 
