Russian Apache Switch to English
Switch to Russian koi8-r
windows=1251
cp-866
iso8859-5
Russian Apache Как это работает Рекоммендации Где взять Как установить Как настроить Статус и поддержка
Краткий обзор FAQ Список рассылки Благодарности Поиск по серверу Powered by Russian Apache
Russian Apache mailing list archive (apache-rus@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] access management with mod_rewrite



On Sat, 23 Jun 2001, Vyacheslav Chukin wrote:

> Использую реврайты типа
> RewriteRule ^/(.*)$ /script.php?name=$1
> 
> Т.е. URL http://www.host.com/file.html
> - это результат работы скрипта
> script.php?name=file.html
> 
> 
> Необходимо сделать запароленные директории.
> Однако http://www.host.com/restricted/file.html
> это есть script.php?name=restricted/file.html,
> т.е. реально вызывается один и тот же файл script.php.
> 
> Могу ли я каким-либо образом сделать
> разграничение доступа на уровне .htaccess или httpd.conf,
> а не в самом script.php?
> 
> Ведь, насколько я понимаю, .htaccess работает на уровне реальных файлов,
> а не URL'ов?
> 
> Подскажите пожалуйста, как быть?

Возможно, будет работать такая конструкция:

<Location  /restricted/>
    RewiteEngine on
    RewriteRule ^/(.*)$ /script.php?name=$1

    Require valid-user
    тра-ля-ля про аутентификацию
</Location>

<Location  />
    RewiteEngine on
    RewriteRule ^/(.*)$ /script.php?name=$1
</Location>

или, если не будет работать, то вторую часть можно записать так:

<FilesMatch  \.html$>
    RewiteEngine on
    RewriteRule ^/(.*)$ /script.php?name=$1
</FilesMatch>

Но следует учесть, что реврайт будет происходить в фазе фиксап,
а не трансляции.

Игорь Сысоев

=============================================================================
=               Apache-Talk@xxxxxxxxxxxxx mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@xxxxxxxxxxxxx if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =






Спонсоры сайта:

[ Russian Apache ] [ Как это работает ] [ Рекомендации ] [ Где взять ] [ Как установить ] [ Как настроить ] [ Статус и поддержка ] [ Краткий обзор ] [ FAQ ] [ Список рассылки ] [ Благодарности ] [ Поиск по серверу ] [ Powered by Russian Apache ] [ Apache-talk archive ]

"Russian Apache" includes software developed by the Apache Group for use in the Apache HTTP server project (http://www.apache.org/) See Apache LICENSE.
Copyright (C) 1995-2001 The Apache Group. All rights reserved.
Copyright (C) 1996 Dm. Kryukov; Copyright (C) 1997-2009 Alex Tutubalin. Design (C) 1998 Max Smolev.