Мы используем shibboleth для защиты виртуального хоста Apache. Мы хотели бы сделать один файл (карту сайта) общедоступным для этого сайта.
Есть ли способ закодировать это в виртуальном хосте?
Текущий виртуальный хост выглядит так:
<VirtualHost *:443>
ServerName my-staging.sjf.edu
DocumentRoot /var/www/sjf/my
<Directory "/var/www/sjf/my">
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Location />
AuthType shibboleth
ShibRequestSetting requireSession 1
<RequireAny>
Require env allowed
require shib-session
</RequireAny>
</Location>
...
<VirtualHost *:443>
Файл, который я хотел бы сделать общедоступным, в идеале должен находиться в корне сайта, но при необходимости его можно разместить и в другом месте.
решение1
Просто добавьте новую <Location>
директиву для карты сайта и настройте ее с помощью Require all granted
:
<VirtualHost *:443>
ServerName my-staging.sjf.edu
DocumentRoot /var/www/sjf/my
<Directory "/var/www/sjf/my">
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<Location />
AuthType shibboleth
ShibRequestSetting requireSession 1
<RequireAny>
Require env allowed
require shib-session
</RequireAny>
</Location>
<Location /sitemap.xml>
Require all granted
</Location>
<VirtualHost *:443>