Как выполнить "AuthType None" в Apache 2.2
http://httpd.apache.org/docs/trunk/mod/mod_authn_core.html#authtype говорит о "AuthType None" и имеет отличный пример того, что мне нужно сделать - к сожалению, похоже быть новым для 2.3/2.4. Есть ли эквивалентная функция в 2.2?
Тип аутентификации None отключает аутентификация. Когда аутентификация он обычно унаследован каждый последующий раздел конфигурации, если другой тип аутентификации. Если аутентификация отсутствует желательно для подраздела аутентифицированный раздел, тип аутентификации Нет. в следующем примере клиенты могут доступ к каталогу /www/docs/public без аутентификации:
<Directory /www/docs>
AuthType Basic
AuthName Documents
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
Require valid-user
</Directory>
<Directory /www/docs/public>
AuthType None
Require all granted
</Directory>
Ответы
Ответ 1
Что-то вроде ниже работает для меня с apache 2.2. Я взял его из http://httpd.apache.org/docs/2.2/mod/core.html#require
<Directory /www/docs>
AuthType Basic
AuthName Documents
AuthBasicProvider file
AuthUserFile /usr/local/apache/passwd/passwords
Require valid-user
</Directory>
<Directory /www/docs/public>
# All access controls and authentication are disabled
# in this directory
Satisfy Any
Allow from all
</Directory>
Ответ 2
Вам просто нужно установить Allow from all и Satisfy Any
Это сработало для меня:
Alias /example "/opt/example.com"
<Directory "/opt/example.com">
Options None
AllowOverride None
Order allow,deny
Allow from all
Satisfy Any
</Directory>
Ответ 3
<Directory /www/docs/public>
AuthType None
Require all granted
Satisfy Any
</Directory>
Это будет работать
Ответ 4
Я думаю, что вы правы: он не поддерживается в 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>
Ответ 5
Это работало для меня на apache2.2:
<Location /trac>
#....
AuthType Basic
AuthName "BLA domain"
AuthUserFile /etc/.passwd
Require valid-user
Allow from all
Satisfy Any
</Location>
Ответ 6
Просто хотел добавить этот бит информации:
В Apache 2.2.22 вам нужно иметь правильный порядок: [/p >
Это не сработало для меня для местоположения "/foo/sub":
Satisfy Any
Allow from all
I. Была применена аутентификация из местоположения "/foo", определенного до "/foo/sub".
Это работает для местоположения "/foo/sub":
Allow from all
Satisfy Any
т.е. аутентификация из местоположения "/foo", определенная до "/foo/sub", была аннулирована.