Почему массив POST пуст в 404 или другой пользовательской странице ошибок IIS?

Я настроил пользовательскую страницу ошибки php 404, IIS > MySite > Error Pages но $ _POST массив всегда пуст. Это нормально? Как мне сказать IIS передавать данные POST на страницу ошибок PHP?

IIS 7.5

1

Решение

отказ: Этот ответ дается в чтении между строк.


Как я отмечал в комментариях, нет никаких оснований для обработки какого-либо пользовательского ввода, если запрос недействителен. Код статуса HTTP 404 буквально означает, что этот запрос недействителен, потому что ресурс не может быть найден.

От Википедия

Запрашиваемый ресурс не найден, но может быть снова доступен
в будущем. Последующие запросы клиента допустимы.

Что такое пост? От Википедия

Согласно RFC 7231, метод POST должен использоваться для любого контекста, в котором
запрос не идемпотентен, то есть это вызывает изменение в сервере
указать каждый раз, когда это выполняется
, например, отправив комментарий
сообщение в блоге или голосование в онлайн-опросе. […]

Я не могу подтвердить или опровергнуть, если это правда, что IIS нет сообщений на 404, так как я никогда не пробовал это. Но не имеет смысла поддерживать.


Для меня это звучит как, вы хотите переписать какой-то запрос. Для этого вам нужен Переписать модуль.

Тогда вы могли бы иметь web.config как это.

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="RequestString">
<match url="^(.*)$" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php?requestString={R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

На ваше index.php вы можете иметь:

echo $_GET['requestString'];

Если вы позвоните по URL http://yourwebsite.com/foo/bar вы будете эхом в index.php строка foo/bar,

Теперь вы можете разбивать строку, принимать с ней некоторые решения и выполнять различные действия с различными значениями.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]