Моя голова запуталась в этой проблеме:
Вот ссылка на XML-файл на nginx: http://tag.sprtad.com/files/vast.xml
вот ссылка на XML-файл на Apache http://serve.sprtad.com/test.xml
Этот XML-файл является своего рода файлом конфигурации, который можно протестировать здесь: https://developers.google.com/interactive-media-ads/docs/vastinspector_dual
Просто вставьте каждую из приведенных выше ссылок в текстовое поле и нажмите «Проверить объявление». Ниже вы можете увидеть журнал событий.
Ссылка NGINX, не работает, тестер возвращает:
(2:36:01 PM) Ads requested
(2:36:09 PM) adError Ad error (code 301): VAST wrapper redirect unwrapping timeout.
(2:36:09 PM) Error: VAST wrapper redirect unwrapping timeout.
Ссылка APACHE, ДЕЙСТВИТЕЛЬНО работает, тестер возвращает:
(2:45:07 PM) Ads requested
(2:45:08 PM) adsManagerLoaded
(2:45:08 PM) adMetadata
(2:45:09 PM) loaded
(2:45:10 PM) Content Pause Requested
(2:45:10 PM) Started
(2:45:10 PM) impression
В чем может быть разница в обработке XML, возвращаемого обоими серверами?
Ваш сервер nginx выводит символы табуляции, возможно, тестер рекламы не справляется с этим. Это видно, если вы пропустите его через od, вы увидите дополнительные символы \ t:
$ curl -s http://serve.sprtad.com/test.xml | od -c
Выше не показаны символы \ t, но есть следующие:
$ curl -s 'http://tag.sprtad.com/files/vast.xml' | od -c
Возможно, что nginx и apache обрабатывают это по-разному, но в любом случае попробуйте удалить символы табуляции из источника и заменить их пробелами, которые более совместимы.
похоже, что при отправке http / 1.0 выполняется перенаправление.
Возможно, вы можете предоставить некоторые детали конфигурации nginx, чтобы проверить, где возможна ошибка.
С уважением, Йозеф