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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по 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