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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





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