Как вернуть сообщение об ошибке?

serialize() с пользовательскими данными не должен работать. Тем более, что тут хватит и http_build_query() с нужным разделителем.
 
Pestilence врубился. Вроде как решили, что правильнее передавать в теле, но с кодом ошибки (503 и т.п.). Куки интересный вариант
 
Сверху