среда, 30 сентября 2009 г.

.htaccess Mod_rewrite - RewriteCond

http://www.vidos.ru/pages-19.html
Мы будем работать с серверными переменными:
TIME_MON
TIME_DAY
в файл .htaccess одну единственную строку:
RewriteRule ^pic.html$ pic-%{TIME_MON}-%{TIME_DAY}.html
Запрашиваемый URL будет перезаписан, например:
pic-08-28.html
pic-08-29.html
pic-08-30.html
и так далее.

http://htaccess.net.ru/doc/mod_rewrite/index.php

Закрыть доступ к веб-сайту в рабочее время

RewriteCond %{TIME_HOUR}%{TIME_MIN} >1000

RewriteCond %{TIME_HOUR}%{TIME_MIN} <1900

RewriteRule .* - [ F ]

http://www.egoroff.spb.ru/portfolio/apache/rewriteguide.html
Редиректы в зависимости от времени
Описание:
Когда нужно применять уловки типа содержания зависящего от времени
масса вебмастеров все ещё используют CGI скрипты которые производят
редиректы на специальные страницы. Как это может быть сделано через
mod_rewrite?
Решение:
Есть много переменных названных TIME_xxx для условий редиректа. В
связке со специальными лексикографическими образцами для сравнения
<STRING, >STRING и =STRING мы можем производить редиректы зависящие от
времени:
RewriteEngine on
RewriteCond %{TIME_HOUR}%{TIME_MIN} >0700
RewriteCond %{TIME_HOUR}%{TIME_MIN} <1900
RewriteRule ^foo\.html$ foo.day.html
RewriteRule ^foo\.html$ foo.night.html

Это выдает содержимое foo.day.html при запросе URL foo.html с
07:00 до 19:00 а в оставшееся время содержимое foo.night.html. Просто
класная вещь для какой-либо странички...

Вы можете указать несколько ip-адресов, и для каждого определить свое
правило перенаправления:
RewriteCond %{REMOTE_ADDR} 12.345.67.89
RewriteRule ^/$ /welcome.html [L]
RewriteCond %{REMOTE_ADDR} 123.45.67.89
RewriteRule ^/$ /close.html [L]
RewriteCond %{REMOTE_ADDR} 98.765.43.21
RewriteRule ^/$ http://www.site.ru [L]

Так же можно сделать перенаправление в зависимости от той страницы, с
которой пришел посетитель:
RewriteCond %{HTTP_REFERER} http://www.site.ru/test.php
RewriteRule ^/welcome.html$ /errors.html [L]
В этом примере всем посетителям, пришедшим с адреса
http://www.site.ru/test.php, вместо страницы welcome.html будет
открываться страница errors.html.


Базовый шаблон .htaccess

Включает все директивы с комментариями, ненужное можно
закомментировать символом #.

# DEFAULT SETTINGS
##############################################
Options +ExecCGI -Indexes
DirectoryIndex index.php index.html index.htm

### DEFAULTS ###
ServerSignature Off
AddType video/x-flv .flv
AddType application/x-shockwave-flash .swf
AddType image/x-icon .ico
AddDefaultCharset UTF-8
DefaultLanguage en-US
SetEnv TZ America/Indianapolis
SetEnv SERVER_ADMIN webmaster@askapache.com

### FAST-CGI ###
AddHandler fastcgi-script fcgi
AddHandler php-cgi .php
Action php-cgi /cgi-bin/php5-wrapper.fcgi

# HEADERS and CACHING
##############################################
#### CACHING ####
# YEAR
<FilesMatch "\.(flv|gif|jpg|jpeg|png|ico)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
# WEEK
<FilesMatch "\.(js|css|pdf|swf)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
# 10 minutes
<FilesMatch "\.(html|htm|txt)$">
Header set Cache-Control "max-age=600"
</FilesMatch>
# DONT CACHE
<FilesMatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>

# REWRITES AND REDIRECTS
##############################################
### SEO REDIRECTS ###
Redirect 301 /2006/uncategorized/htaccesselitecom-aboutus.html
http://www.^^SITE^^.^^TLD^^

### REWRITES ###
RewriteEngine On
RewriteBase /

### WORDPRESS ###
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond % !-f
RewriteCond % !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

# AUTHENTICATION
##############################################
AuthName "askapache.com"
Require valid-user
AuthUserFile /askapache/.htpasswd
AuthType basic

Комментариев нет:

Отправить комментарий