http://httpd.apache.org/docs/trunk/mod/mod_authn_core.html#authtype не говорит о "AuthType Ни один" и имеет потрясающий пример точно, что я должен сделать - к сожалению, это, кажется, в новинку для 2.3/2.4. Есть ли какая-либо эквивалентная функция в 2,2?
Тип аутентификации Ни один не отключает аутентификацию. Когда аутентификация включена, она обычно наследована каждым последующим разделом конфигурации, если другой тип аутентификации не указан. Если никакая аутентификация не желаема для подраздела аутентифицируемого раздела, тип аутентификации, Ни один не может использоваться; в следующем примере клиенты могут получить доступ к/www/docs/public каталогу без аутентификации:
AuthType Basic AuthName Documents AuthBasicProvider file AuthUserFile /usr/local/apache/passwd/passwords Require valid-user AuthType None Require all granted
<Directory /www/docs/public>
AuthType None
Require all granted
Satisfy Any
</Directory>
Это будет работать
Думаю, вы правы: в apache 2.2 он не поддерживается.
Я бы попробовал уродливый обходной путь на https://issues.apache.org/bugzilla/show_bug.cgi?id=10932
Что-то вроде:
<DirectoryMatch "^/www/docs/(?!public)">
AuthType Basic
AuthName Documents
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
Require valid-user
</Directory>
или
<DirectoryMatch "^/www/docs/[^p][^u][^b][^l][^i][^c]">
AuthType Basic
AuthName Documents
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
Require valid-user
</Directory>