0+ Материал без явных возрастных ограничений

Как я только не пытался найти решение в интернете о том, что же наконец сделать такого, чтобы Google Chrome отдавал mp4 файлпользователю для загрузки (скачивания), а не открывал его в своем встроенном плеере, не давая пользователю сохранить его на диск.

Похожие материалы:

Загрузка...

Искал долго. Но один хороший человек посоветовал обратиться ко всемирной паутине в виде сайта stackoverflow.com

Задал там вопрос:

 

specify how to configure the server to the fact that he gave the mp4 file to load it in the G Chrome? When you click on the link downloads a file is opened in a browser that is not very acceptable. I was looking for ... They said that you must configure the header, but I do not quite understand where it needs to be done. It is also advised to change: application/file mp4; or remove this extension is quite mimetypes

I also tried:

location /files { 

if ($request_filename ~* ^.*?/([^/]*?)$)
{
set $filename $1;
add_header Content-Disposition "attachment; filename=$filename";
}

}

, but nothing changed.

What to do? I'll be glad to any advice. Thank you.

I also know that mp4 files can be issued to the user for download, as implemented in savefrom.net

Перевод с дополнениями:

Как настроить nginx сервер для того, чтобы в Google Chrome пользователь не клацал правой кнопкой мыши по ссылке, далее нажимал Сохранить как и так далее, а просто нажимал на кнопку и получал окно, которое предлагает сохранить файл.

Я пытался поменять header (заголовок) файла, однако это не привело ни к чему.

Также я удалил расширение mp4 из файла mime.types и mime.types.default. Это также не дало никакого результата.

___________

В итоге. Мне посоветовали сделать так:

I think you have a little bit wrong header Content-Disposition
add_header Content-Disposition "attachment; filename=\"$1\"";

Also you don't need set filename $1; (with my example) it should be removed.
For me such method works fine.

То есть, убрать строку

set filename $1;

И заменить

"attachment; filename=\"$1\""

Что я собственно и сделал. Но это не дало никакого результата.
В итоге, я понял как необходимо изменить код:
1. Убрал расширение mp4 из файла mime.types и добавил следующее в конфигурационный файл nginx.conf

location ~ \.mp4$ 
{valid_referers none blocked
usemind.org www.usemind.org teachstore.org www.teachstore.org d.usemind.org www.d.usemind.org;

if ($invalid_referer) {
rewrite ^/ https://usemind.org/;
}
mp4;
if ($request_filename ~* ^.*?/([^/]*?)$)
{
set $filename $1;
add_header Content-Disposition "attachment; filename=$filename";
}
}

вместо моих доменов подставьте свои...

Здесь также представлен код для защиты от нежелательного referrer'а. То есть хотлинкинга или защиты прямых ссылок на файлы. Это делает для того, чтобы никто не мог без Вашего ведома использовать файлы, лежащие на сервере. Конечно, referrer можно подделать, но в большинстве случаев этим никто не будет заниматься.

Этот код необходимо добавлять после строки

server {...

После чего мы идем в SSH (ссылка для скачивания PuTTY ниже), авторизируемся под root'ом и вводим команду:

/etc/init.d/nginx restart

Для apache-server Вы можете прописать следующее в файле .htaccess:

<Files *.mp4>
AddType application/x-force-download .mp4
ForceType application/octet-stream
Header set Content-Disposition attachment
</Files>
Категория:
Web
Поделитесь в социльных сетях:

Информация:

Создан:
Просмотров:
2378

Наши ресурсы
(не реклама)
:

Смотрите и скачивайте документальные фильмы
Скачивайте программы для Windows
Смотрите онлайн и скачивайте видеоуроки
Обучающие и развивающие книги для Вас
Приложения
Скачивайте самые нужные приложения для Android
Мультфильмы
Старые и новые мультики. Безопасно для детей
Видеоклипы
HD видеоклипы онлай, скачивайте mp4, mp3 ,aac
Скрипты
Скачивайте и смотрите как сделать различные скрипты: PHP, JS, CSS, HTML
Заказать сайт
Заказывайте профессиональное создание сайта

Случайный материал: Еще

Последние 9 материалов:

Добавить комментарий
Комментариев пока нет
Загрузка...