Как я могу предоставить другой доступ к подкаталогам?
Первая проблема: я должен позволить программистам изменять файлы htaccess, но не управлять доступом.
На этот раз у меня есть доступ только к директивам htaccess, а не к httpd.conf Apache. А вот и мои папки:
~/www/
~/beta/ -> group betatesters developers
~/dev/ -> group developers
Я хотел бы иметь только один .htaccess, расположенный в корневом каталоге (у разработчиков нет доступа к нему).
~/.htaccess
~/htpassd
~/htgroup
.
AuthType Basic
AuthName "Password Required"
AuthUserFile /home123/user321/htpasswd
AuthGroupFile /home123/user321/htgroup
<FilesMatch "beta">
Require group betatesters developers
</FilesMatch>
<FilesMatch "dev">
Require group developers
</FilesMatch>
Любая идея?
после того, как вы заявили, что у вас НЕТ доступа к httpd.conf, ответ Джошуа Хоблитта применяется только частично.
если вы можете использовать другую структуру каталогов, например
~/www
~/www/beta
~/www/dev
вы можете адаптировать решение Джошуа.
Вы можете установить в Apache conf, какие параметры можно изменить в .htaccess
файл. http://httpd.apache.org/docs/2.0/mod/core.html#allowoverride
В вашем конкретном примере вы не хотите AuthConfig
настройки, которые необходимо преодолеть. Вы можете сделать это, либо не перечислив AuthConfig с AllowOveride
директива. например.
<Directory foo>
AllowOveride Indexes <...>
</Directory>
Или явно заявляя, что AuthConfig
не подлежит изменению.
<Directory foo>
AllowOveride -AuthConfig <other options here>
</Directory>