Я пытаюсь установить некоторые элементы управления в Apache через файл .htaccess. Это работает:
<LimitExcept GET>
Order allow,deny
Allow from all
Deny from all
</LimitExcept>
пока это не так:
<LimitExcept POST>
Order allow,deny
Allow from all
Deny from all
</LimitExcept>
Пожалуйста, помогите мне понять, что здесь происходит.
Пример тестового случая:
Я создал простую HTML-форму (form.html), чтобы проверить:
<form method="post" action="./test/index.html">
<input type="submit" name="submit" value="submit" />
</form>
По ней я создал подпапку "test" с двумя файлами:
- index.html (<p>Привет, мир</p>)
- .htaccess (с содержимым точно таким же, как один из блоков кода выше)
В случае первой версии файла .htaccess при отправке HTML-формы возникает ошибка 403, а прямой доступ (ввод полного адреса в браузере, например, /test/index.html) не блокируется. Это ожидаемо. Однако в случае второй версии файла .htaccess как отправка HTML-формы, так и прямой доступ приводят к ошибке 403.
Я не думаю, что это ошибка (проверено в Apache 2.2 и 2.4), но знать, что другие люди могут воспроизвести ее, было бы весьма полезно. Конечно, в конечном итоге я хотел бы понять, почему все работает не так, как задумано.