Я знаю в VirtualHost
определение, которое я могу иметь:
AccessFileName .myfilename
Однако apache этого не позволяет:
AccessFileName /absolute/location/of/.myfilename
Есть ли какое-то обходное решение? Я хочу иметь один каталог, который используется на нескольких сайтах, но я хотел бы иметь разные .htaccess
файлы с правилами для каждого сайта.
Я знаю, что могу установить правила в VirtualHost
определение, но это требует перезапуска / перезагрузки apache каждый раз, когда я вношу изменения.
Я понимаю, что у меня могут быть разные имена файлов для каждого сайта, но я старался не загромождать каталог.
Есть хороший способ сделать это?
Нет абсолютных путей, так как файл доступа всегда проверяется в родительских путях.
Пример, приведенный в документация:
AccessFileName .acl
перед возвратом документа /usr/local/web/index.html сервер прочитает /.acl, /usr/.acl, /usr/local/.acl и /usr/local/web/.acl для директив, если только они были инвалидами с
AllowOverride None
Вы хотите, чтобы они создавались для каждого сайта - если сайты не имеют общей структуры каталогов, вы можете просто поместить их в путь каждого сайта. Но я бы рекомендовал просто перезагрузить, когда конфигурация изменится.
Бессмертными словами Документация Apache: "В общем, вы никогда не должны использовать файлы .htaccess, если у вас нет доступа к основному файлу конфигурации сервера."