![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Greendrake |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 364 Регистрация: 14.7.2005 Репутация: нет Всего: 6 |
В корне сервера имеем файл 1.txt со всякой лабудой на несколько десятков кило.
Также имеем файл 1.php следующего содержания:
Вопрос: в чём будет заключаться отличие в ответах сервера при запросе 1.txt и 1.php ? В браузере отличий, понятное дело, нет, однако их чувствует программа 1С. В случае 1.php она обрезает (или недополучает) ответ, получив около 1 кб Это сообщение отредактировал(а) Greendrake - 19.7.2006, 17:59 |
|||
|
||||
| PARROT |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2339 Регистрация: 5.1.2005 Где: Спб-ЦарьГрад Репутация: 23 Всего: 50 |
В вашем коде лишняя ; Это сообщение отредактировал(а) PARROT - 19.7.2006, 18:26 -------------------- Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим! |
|||
|
||||
| Greendrake |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 364 Регистрация: 14.7.2005 Репутация: нет Всего: 6 |
PARROT, не понял к чему приведённый вами код. Он заносит содержимое 1.php в конец 1.txt - как это относится к сабжу?
|
|||
|
||||
| PARROT |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2339 Регистрация: 5.1.2005 Где: Спб-ЦарьГрад Репутация: 23 Всего: 50 |
Просто не совсем понятно, что вы хотите получить в итоге, результат работы скрипта или что-то иное. -------------------- Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим! |
|||
|
||||
| Greendrake |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 364 Регистрация: 14.7.2005 Репутация: нет Всего: 6 |
Я просто хочу чтобы скрипт тупо прочитал и выдал содержимое txt-файла. Но на этом мои желания не заканчиваются. Ещё я хочу, чтобы клиент не мог догадаться, что ему подсунул сервер - собственно текстовый файл, или его же содержимое, выданное скриптом. Предыстория вопроса: Обнаружено, что программа 1С при при обращениях к сайтам в одних случаях получает страницы полностью, а в других - обрезанные. При этом браузеры получают страницы целиком всегда. С целью докопаться до причин, был поставлен следственный эксперимент, о котором здесь и идёт речь. Программа 1С получает содержимое файла txt при его прямом запросе - целиком и полностью, а при запросе скрипта - не полностью. Хотя браузеры выдают идентичное содержимое при запросе и того и другого. Кстати, на различия в URLах - .php или .txt на конце можно не грешить, это я уже проверял с помощью mod_rewrite, подсунув скрипт по запросу txt. Результат не отличался от запроса php, т. е. был обрезанным в 1C. Походу, тут ничего не остаётся кроме как побайтно сверять ответ сервера со всеми заголовками в обоих случаях - txt и php. Вот ответы, которые удалось подсмотреть с помощью анализатора трафика: Ответ на запрос текстового файла ![]() Ответ на запрос скрипта, тупо выдающего содержимое текстового файла ![]() Что бросается в глаза? Во-первых, у ответа на запрос txt указана длина - Content-Length. Во вторых, ответ на запос скрипта выдан в неком chunked формате - что это такое и как с этим бороться? Короче, теперь вопрос стоит так: Как нужно изменить php-скрипт, чтобы его ответ был таким же как у txt? Добавлено @ 22:03 Короче, я так подозреваю, нужно просто ставить заголовок Content-Length с длиной файла. Вот тут у чувака похожая трабла была http://ru.php.net/header#50948 Заврта попробую. |
|||
|
||||
| szz |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: 8 Всего: 33 |
Это как бы законсервированный способ передачи. Файл выдается по кусочкам (размер текущего кусочка указан в хедере Chunk size: xxx octets). Браузер после получения этого кусочка должен запросить новый и так до конца - это делается чтоб юзер видел постепенно загружающийся файл, а не ждал пока все-все подгрузится, а потом отобразится (или для долгоиграющих файлов, вроде видео или аудио потоков) Бороться с этим так: поставить длину (верно мыслишь) и
У меня MDM Zinc тоже грузил только первый чанк - поставив 7bit и длину - я все исправил. Это сообщение отредактировал(а) szz - 20.7.2006, 05:48 --------------------
|
||||||
|
|||||||
| Greendrake |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 364 Регистрация: 14.7.2005 Репутация: нет Всего: 6 |
Всё, вот рабочее решение
|
|||
|
||||
| szz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: 8 Всего: 33 |
Что-ж, значит 1C поумнее Zinca будет )))
--------------------
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |