П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 179567 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 77504 раз(а).

Учебник HTML.
Просмотров 75154 раз(а).

Руководство по PHP5.
Просмотров 46192 раз(а).

Хостинг через призму DNS.
Просмотров 53439 раз(а).

Подборка текстов стандартных документов.
Просмотров 46174 раз(а).

Учебник PHP - Самоучитель
Просмотров 52331 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 52885 раз(а).

Внешние атаки...
Просмотров 42793 раз(а).

Учебник PHP.
Просмотров 38313 раз(а).

SSI в примерах.
Просмотров 28398 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Руководство по URL преобразованиям
Другое

Внешний механизм преобразований

Описание:

Часто задаваемый вопрос: Как мы можем решить проблему FOO/BAR/QUUX/и т.д.? Здесь кажется нет решения с использованием mod_rewrite

Решение:

Использование внешнего массива RewriteMap, т.е. программы которая действует как RewriteMap. Она запускается один раз при старте Apache, получает запрошенные URL на входной поток и должна помещать результирующиие URL (обычно преобразованные) в выходной поток (в том же самом порядке!).

RewriteEngine on
RewriteMap    quux-map       prg:/path/to/map.quux.pl
RewriteRule   ^/~quux/(.*)$  /~quux/${quux-map:$1}
#!/path/to/perl

#   отключение буфферизованного I/O который привел бы
#   к бесконечному зацикливанию и зависанию Apache
$| = 1;

#   чтение URL один в строке из входного потока и
#   генерация URL для подстановки в выходной поток
while (<>) {
    s|^foo/|bar/|;
    print $_;
}

Это только демонстрационный пример и тут просто все URL /~quux/foo/... преобразуются в /~quux/bar/.... В действительности вы можете запрограммировать здесь все что угодно. Примите во внимание, что хотя такие массивы и могут быть использованы, в том числе и обычным пользователем, однако определять их может только системный администратор.




[ Назад ] [ Содержание ] [ Вперед ]



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru