Я использую следующий код для перенаправления на страницу в PHP. Мне нужно настроить пользовательские заголовки HTTP для передачи вместе с перенаправлением.
header("Location: http://...");
Как я могу архивировать это?
Вызов нескольких header
:
header("Location: ...."); header("Header2: ...."); header("Header3: ...."); ...
Боюсь, все ответы ошибочны и вводят в заблуждение!
Невозможно перенаправить на страницу с настраиваемыми заголовками, независимо от того, какой язык или структура вы используете. Другими словами, нет способа вызвать перенаправление HTTP и заставить клиента (браузер) добавить настраиваемый заголовок.
Возможно, вы думаете, что использование нескольких вызовов header()
должно работать нормально. Но это не так. Вы настраиваете настраиваемые заголовки для ответа, который инструктирует браузер перенаправлять, а не для перенаправления.
Единственный способ для сайта дать указание браузеру выдать HTTP-запрос с помощью настраиваемого заголовка – использовать Javascript и объект XMLHttpRequest
. И для реализации таких запросов ajax ему нужен CORS на целевом сервере.
Обратите внимание, что страница не может устанавливать заголовки HTTP-запросов, если она не выполняет запрос async с использованием XMLHttpRequest
. Это означает, что вы не можете выполнять перенаправление с пользовательским заголовком на стороне клиента.
Веб-сайт работает не так.
Просто добавьте дополнительные вызовы header()
после или до этого.
header("Location: http://..."); header("Content-Type: text/plain");