Как установить заголовок Content-Length с помощью php.ini / httpd.conf / .htaccess?

1

У меня есть файлы в формате pdf на моем общем сервере хостинга. Мне нужно загрузить их из приложения iOS, и я хочу показать индикатор выполнения загрузки.

Но я не мог, потому что Content-length отсутствует в ответе заголовка.

Как я могу это получить?

  • 1
    Причина в том, что ваше сжатие gzip включено. поэтому вы должны использовать альтернативное решение для: serverfault.com/questions/183843/… stackoverflow.com/questions/815961/…
  • 0
    Подскажите, пожалуйста, как я могу отключить это сжатие? Я искал свой файл php.ini с помощью gzip, но ничего подобного не нашел. Но в ответ я получаю> Content-Encoding gzip
Теги:
.htaccess
httpd.conf

1 ответ

2
Лучший ответ

Вы можете установить его через заголовок. С помощью функции заголовка вы можете установить HTTP-информацию. Но учтите, что у вас нет выхода до установки HTTP-информации.

header('Content-type: application/pdf');
header("Content-length: $size");
header('Content-Disposition: attachment; filename="downloaded.pdf"');

Редактировать:

Если вы не используете PHP для загрузки файла, вы можете использовать SetEnv no-gzip dont-vary в вашем htaccess для подавления GZIP.

  • 0
    Спасибо @Tobias. Но проблема в том, что я не запрашиваю php-файл. Я запрашиваю PDF напрямую.
  • 0
    Ах, хорошо, извини. Попробуйте добавить SetEnv no-gzip dont-vary в ваш htaccess. Потому что ваш сервер автоматически архивирует файл PDF.
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню