ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

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

Re: [apache-talk] initial/redir#1



>>>>> "Igor" == Igor Sysoev <is@rambler-co.ru> writes:

 Igor> А так ?  RewriteRule ^/([^~].*) /~%1/$1 [NS,PT]

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

RewriteMap cgi     dbm:/var/db/apache/cgi
RewriteMap tolower int:tolower
RewriteMap virtual dbm:/var/db/apache/virtual

# http://www.user.ru/
RewriteCond ${tolower:%{HTTP_HOST}}     ^([^:]+)
RewriteCond ${virtual:%1}               ^(.+)$
RewriteRule ^/(.*)                      /~%1/$1                 [S=3]

# http://www.user.vlink.ru/
RewriteCond ${tolower:%{HTTP_HOST}}     ([^.]+\.vlink\.ru)(:.*)?$
RewriteCond ${virtual:%1}               ^(.+)$
RewriteRule ^/(.*)                      /~%1/$1                 [S=2]

# http://www.vlink.ru/~user/
RewriteCond ${tolower:%{HTTP_HOST}}     (vlink\.ru)(:.*)?$
RewriteCond ${virtual:$1.%1}            ^(.+)$
RewriteRule ^/~([^/]+)/(.*)             /~%1/$2                 [S=1]
RewriteRule ^/~([^/]+)                  -                       [F]

# CGI
RewriteCond ${cgi:$1}                   =OK
RewriteRule /~([^/]+)/cgi-bin/(.+)      - [L,NS,PT,T=application/x-httpd-cgi]
RewriteRule /~([^/]+)/.+\.cgi           - [L,NS,PT,T=application/x-httpd-cgi]

# вместо [PT]
RewriteRule /~([^/]+)/(.*)              /~$1/public_html/$2

2 All: Какие-нибудь замечания есть? Кстати, посоветуйте, как права
расставить на пользовательских каталогах? Apache запущен, как
www:www. Все юзера входят в группу hosting. Юзер www тоже. Сейчас сделал так:

rwx--x--- root:hosting /usr/local/www/home
rwx--x--- root:hosting /usr/local/www/home/ppd
rwx--x--- root:hosting /usr/local/www/home/ppd/sh
rwxr-x--- root:www     /usr/local/www/home/ppd/sh/ppdsh2
rwxr-x--- root:hosting /usr/local/www/home/ppd/sh/ppdsh2/public_html

В идеале хотелось бы, что бы пользователи могли cd только в свои
домашние каталоги. А в этой схеме они могут еще и в промежуточные cd.

-- 
DSS5-RIPE DSS-RIPN 2:550/5068@fidonet 2:550/5069@fidonet
mailto:dsh@vlink.ru http://neva.vlink.ru/~dsh/
=============================================================================
=               Apache-Talk@lists.lexa.ru mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =



 




Copyright © Lexa Software, 1996-2009.