Назад | Перейти на главную страницу

nginx vs apache при возврате файлов XML

Моя голова запуталась в этой проблеме:

Вот ссылка на 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, чтобы проверить, где возможна ошибка.

С уважением, Йозеф