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

О проекте

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

MySQL

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

Хостинг

Другое








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

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

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

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

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

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

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

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

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

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

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

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



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





Руководство по URL преобразованиям
Управление содержанием

Новый тип MIME, новая служба

Описание:

В сети есть масса отличных CGI программ. Однако их применение обычно надоедает, поэтому многие веб-мастера их не используют. Даже функция Action handler Apache'а для MIME-типов применима только тогда, когда CGI программы не нуждаются в специальных URL (в действительности PATH_INFO и QUERY_STRINGS) для них является входом. Сначала, давайте настроим новый тип файла с расширением .scgi (для защищенных CGI) которые будут обрабатываться популярной программой cgiwrap. Проблема здесь заключается в том что для этого случая мы используем однородный URL (см. выше) и и какой-либо файл находящийся внутри домашних каталогов пользователей имеет URL /u/user/foo/bar.scgi. Однако cgiwrap требует URL в виде /~user/foo/bar.scgi/. Следующая директива решает эту проблему:

RewriteRule ^/[uge]/([^/]+)/\.www/(.+)\.scgi(.*) ...
... /internal/cgi/user/cgiwrap/~$1/$2.scgi$3  [NS,T=application/x-http-cgi]

Или предположим что у нас есть несколько полезных программ: wwwlog (отображающая access.log для поддерева URL и wwwidx (запускающая Glimpse на поддереве URL). Мы должны предоставить область URL для этих программ чтобы они знали для какой области они должны работать. Однако обычно это ужасно, потому что они все время запрашиваются из тех областей, т.е. обычно мы бы запускали программу swwidx из /u/user/foo/ через ссылку

/internal/cgi/user/swwidx?i=/u/user/foo/

которая ужасна. Так как мы должны жестко связывать и местоположение области и местонахождение CGI внутри гиперссылки. В случае если нам необходимо реорганизовать эту область, мы тратим массу времени меняя различные гиперссылки.

Решение:

Решение в этом случае это сделать новый специальный формат URL который автоматически приводит к вызову нужного CGI. Настраиваем так:

RewriteRule   ^/([uge])/([^/]+)(/?.*)/\*  /internal/cgi/user/wwwidx?i=/$1/$2$3/
RewriteRule   ^/([uge])/([^/]+)(/?.*):log /internal/cgi/user/wwwlog?f=/$1/$2$3

Теперь гиперссылка для поиска /u/user/foo/ считывает только

HREF="*"

который внутренне автоматически трансформируется в

/internal/cgi/user/wwwidx?i=/u/user/foo/

То же самое приводит к вызову CGI программы для доступа к логам когда используется гиперссылка :log.




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



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





Copyright © 2005-2016 Project.Net.Ru