- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Такой вот вопрос меня мучает:
есть некий сайт, впринципе аналог WordPress, который отдаёт текстовые страницы. Не суть важно, а проблема с ним вот какая - страницы, отдаваемые этим сайтом, заполняются "мусором" из цифр. Например в начале страницы идёт 1f97 затем текста нменого, 1f7c опять текст 1fc1 и т.д.
Схема работы сайта: сайт - апач2 - nginx - пользователь. Если открывать этот сайт напрямую в апаче, та-же страница выглядит нормально, никаких цифр. Через nginx как прокси - вылезают эти цифры, хоть тресни. Насколько я помню, это фича у апача называется чанки и она бывает всегда когд запрос был http/1.1 Однако nginx поддерживает 1.1...
Что ещё заметил, и думаю дело именно в этом:
все страницы сайта выдаются через один файл, используюя .htaccess с правилом
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
причём только то, что было выдано через это правило отдаётся так криво. Всё прочее (в обход правила) отдаётся нормально. В том числе другие сайты с простыми реврайтами типа
RewriteRule ^about\.html about.php [T=application/x-httpd-php,L]
RewriteRule ^help\.html help.php [T=application/x-httpd-php,L]
RewriteRule ^sitemap\.html sitemap.php [T=application/x-httpd-php,L]
также выдаются на ура и без вылезания этх цифр. Так в чём-же может быть дело? Никак не могу понять. :( Никто не может подсказать, с чем это связано?
p.s.: Версия апача 2.2.9, nginx 0.7.63. Страницы сайт выдаёт как простой html, без сжатия в gz.
nginx работает с бакендом по HTTP/1.0
Таким образом, ваша задача - научить бакенд не
использовать чанки для HTTP/1.0. Документация
апача покажет как.
hint: слать Сontent Length
или
SetEnv force-no-vary
SetEnv downgrade-1.0
Странно, что пострадал только один сайт из многих, работающих под этой связкой.
Добавил эти SetEnv в .htaccess, мусор исчез. Хотя вставка в код строки типа
header('HTTP/1.0 200 OK');
ни к чему не привела :(
Спасибо за совет. Вобщем-то проблема решена, хотя и странно, что она так выборочно появляется.
Проблема эта обычно в php-коде в header(), который выставляет принудительно HTTP/1.1, исправьте на 1.0 и проблема исчезнет.