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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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