Вызов типа Ajax из PHP

#javascript #php #ajax

#javascript #php #ajax

Вопрос:

У меня следующая ситуация: внешний сервер перенаправляет HTTP Post на внутренний сервер. При входе на внутренний сервер я выполняю некоторый PHP-код перед загрузкой страницы. На этом этапе я хотел бы отправить уведомление обратно на внешний сервер о том, что перенаправление прошло успешно.

Страница входа на серверной части использует шаблон Post / Redirect / Get для предотвращения повторной отправки формы браузером, поэтому после этого PHP-код выполняет HTTP Get-запрос к самому себе. После отправки заголовка Get уведомление обратно во внешний интерфейс не должно отправляться из PHP-кода, чтобы предотвратить отправку его при каждом обновлении страницы на внутреннем сервере.

Можно ли это сделать из PHP-кода, или мне нужно дождаться загрузки документа, а затем использовать Ajax-вызов из Javascript и каким-то образом проверить, что уведомление отправляется только один раз (в первый раз)?

Комментарии:

1. Рассматривали ли вы запрос cURL от внутреннего сервера к интерфейсному серверу, сообщающий ему, что перенаправление прошло успешно?

Ответ №1:

После завершения всей обработки ваш внутренний сервер может перенаправить обратно на внешний сервер с любыми пользовательскими данными, которые будут переданы либо как POST vars, либо как параметры URL в GET. Затем интерфейсный сервер будет обрабатывать отображение этих пользовательских данных в пользовательском интерфейсе.

Но я думаю, что это неаккуратный дизайн… системы должны быть разделены не только по соображениям безопасности, но и для масштабируемости. Лучшим дизайном, по моему мнению, было бы выполнять двунаправленные AJAX-вызовы между вашим «внешним» веб-сервером и защищенной брандмауэром «внутренней» системой.