synology.forum архив спільноти · 2005–2022
ai.synology.forum →
ГлавнаяФайловый Сервер › Прямая ссылка на файл

Прямая ссылка на файл

nitsik · 27.04.2017

Можно ли получить прямую ссылку на файл для скачивания, без промежуточной страницы, на которой уже нажимаешь кнопку скачать?

polanat · 28.04.2017
Можно ли получить прямую ссылку на файл для скачивания, без промежуточной страницы, на которой уже нажимаешь кнопку скачать?

А через что собственно скачиваете? Случаем не через Gofile.me ???

 

http://storage4.static.itmages.ru/i/17/0428/s_1493344615_7175141_91571b3bfd.jpg

SergeS · 28.04.2017
Можно ли получить прямую ссылку на файл для скачивания, без промежуточной страницы, на которой уже нажимаешь кнопку скачать?

 

О каком протоколе речь?

Ну через web-станцию (по http или https ) точно можно. По фтп и webdav в разных вариантах. По самбе тоже не проблема. Это то, что вы хотели?

 

Если вы имели в виду генерацию хттп(с) линка на файл в любой папке прямо из Файл-Станции - то на ГугльХроме тоже вроде сразу начинает скачивать, хотя на ИЭксплорере вроде задавал лишний вопрос, но тут я могу ошибиться - во первых уже точно не помню, а во вторых - у меня такие ссылки все генерируются по https, а сертификат не прикручен, так что оно по любому ругается и требует отдельно на кнопочку нажать...

 

nitsik · 28.04.2017
А через что собственно скачиваете? Случаем не через Gofile.me ???

 

http://storage4.static.itmages.ru/i/17/0428/s_1493344615_7175141_91571b3bfd.jpg

Нет, через выделенный ip провайдера.

О каком протоколе речь?

Ну через web-станцию (по http или https ) точно можно. По фтп и webdav в разных вариантах. По самбе тоже не проблема. Это то, что вы хотели?

 

Если вы имели в виду генерацию хттп(с) линка на файл в любой папке прямо из Файл-Станции - то на ГугльХроме тоже вроде сразу начинает скачивать, хотя на ИЭксплорере вроде задавал лишний вопрос, но тут я могу ошибиться - во первых уже точно не помню, а во вторых - у меня такие ссылки все генерируются по https, а сертификат не прикручен, так что оно по любому ругается и требует отдельно на кнопочку нажать...

Да, я пробовал "генерацию хттп(с) линка на файл в любой папке прямо из Файл-Станции" - открывается промежуточная страница с кнопкой "Скачать", а мне нужен прямой линк. С фтп кстати тоже проблема, открою отдельную тему...

Вот пример файла http://109.254.76.27:5000/sharing/Ql813G3d5

p. s. С моего компьютера ссылка не работает, видимо из-за того, что захожу со своего же ip. Роботает через внутренний ip 192.168.0.222.

p.p.s Скрин тут http://mini.s-shot.ru/1024x768/JPEG/1024/Z...ing%2FQl813G3d5 - Сделал с помощью сервиса скриншота сайтов

 

sanrega · 28.04.2017

Скачал файл, зашёл в Загрузки браузера (Chrome), скопипастил прямую ссылку на ваш тестовый файл :)

http://109.254.76.27:5000/fsdownload/Ql813G3d5/test.txt

 

То есть, получается, что достаточно после пути к файлу дописать само имя файла с расширением, чтобы получить прямую ссылку.

nitsik · 28.04.2017
Скачал файл, зашёл в Загрузки браузера (Chrome), скопипастил прямую ссылку на ваш тестовый файл :)

http://109.254.76.27:5000/fsdownload/Ql813G3d5/test.txt

 

То есть, получается, что достаточно после пути к файлу дописать само имя файла с расширением, чтобы получить прямую ссылку.

Через хром такое работает, но, когда на VPS с debian пытаюсь скачать этот файл, то внутри файла совершенно не то что нужно:

wget http://109.254.76.27:5000/fsdownload/Ql813G3d5/test.txt

nano test.txt
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=11" />
<meta name="msapplication-TileImage" content="resources/images/icon_tile.png?v=4398" />
<meta name="application-name" content="MyServer - Synology DiskStation" />
<meta name="msapplication-TileColor" content="#246BB3"/>
<meta name="description" content="DiskStation provides a full-featured network attached storage (NAS) solution to help you manage, backup and share data among Windows, Mac and Linux easily." />
<meta name="keywords" content="Multitasking,Web Application,Personal Cloud" />

<link rel="mask-icon" href="webman/safari_pin_icon.svg" color="#0086E5" />
<link rel="shortcut icon" href="webman/favicon.ico?v=4399" />
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_96.png?v=4398" sizes="96x96"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_64.png?v=4398" sizes="64x64"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_48.png?v=4398" sizes="48x48"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_32.png?v=4398" sizes="32x32"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_16.png?v=4398" sizes="16x16"/>
<title>MyServer - Synology DiskStation</title>
<link rel="stylesheet" type="text/css" href="scripts/ext-3/resources/css/ext-all.css?v=1486065882" />
<link rel="stylesheet" type="text/css" href="scripts/ext-3/resources/css/xtheme-gray.css?v=1486065882" />
<link rel="stylesheet" type="text/css" href="scripts/ext-3/ux/ux-all.css?v=1486065882" />
<link rel="stylesheet" type="text/css" href="synoSDSjslib/sds.css?v=1486065904" />
<link rel="stylesheet" type="text/css" href="webman/resources/css/desktop.css?v=1487017350" />
<style type="text/css">
@import url("webman/modules/ConfigBackup/style.css?v=1487018119");
@import url("webman/modules/HotkeyManager/style.css?v=1487017349");
@import url("webman/modules/AviaryEditor/style.css?v=1487017349");
@import url("webman/modules/Utils/style.css?v=1487017388");
@import url("webman/modules/PhotoViewer/style.css?v=1487017388");
@import url("webman/modules/DSMNotify/style.css?v=1487017389");
@import url("webman/modules/C3/style.css?v=1487017349");
@import url("webman/modules/TaskSchedulerUtils/style.css?v=1487017388");
@import url("webman/modules/HelpBrowser/style.css?v=1487017389");
@import url("webman/modules/LogCenter/style.css?v=1487017393");
@import url("webman/modules/WelcomeApp/style.css?v=1487017350");
@import url("webman/modules/PersonalSettings/style.css?v=1487017388");
@import url("webman/modules/ClipBoardJS/style.css?v=1487017388");
@import url("webman/modules/AudioPlayer/style.css?v=1487017388");
@import url("webman/modules/DataDrivenDocuments/style.css?v=1487017349");
@import url("webman/modules/PollingTask/style.css?v=1487017389");
@import url("webman/modules/StorageManager/style.css?v=1487017349");
@import url("webman/modules/TaskSchedulerWidget/style.css?v=1487017350");
@import url("webman/modules/VideoPlayer2/style.css?v=1487017490");
@import url("webman/modules/Share/style.css?v=1487017388");
@import url("webman/modules/ExternalDevices/style.css?v=1487017349");
@import url("webman/modules/SupportForm/style.css?v=1487017388");
@import url("webman/modules/MyDSCenter/style.css?v=1487017389");
@import url("webman/modules/SecurityScan/style.css?v=1487017411");
@import url("webman/modules/DiskMessageHandler/style.css?v=1487017350");
@import url("webman/modules/SystemInfoApp/style.css?v=1487017349");
@import url("webman/modules/BandwidthControl/style.css?v=1486066124");
@import url("webman/modules/Widgets/style.css?v=1487017350");
@import url("webman/modules/EzInternet/style.css?v=1487017349");
@import url("webman/modules/PkgManApp/style.css?v=1487017388");
</style>
<style type="text/css">
@import url("webman/modules/ResourceMonitor/style.css?v=1487017349");
@import url("webman/modules/LicenseManager/style.css?v=1487017545");
@import url("webman/modules/ResourceMonitor/style.css?v=1487017349");
@import url("webman/modules/LicenseManager/style.css?v=1487017545");
@import url("webman/modules/WelcomeTip/style.css?v=1487017350");
@import url("webman/modules/HAMessageHandler/style.css?v=1487017350");
@import url("webman/modules/ThumbConvertProgress/style.css?v=1487017540");
@import url("webman/modules/AdminCenter/style.css?v=1487017431");
@import url("webman/modules/FileBrowser/style.css?v=1489580875");
@import url("webman/modules/FileTaskMonitor/style.css?v=1489580773");
</style>
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynoFinder/style.css?v=1486626419" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/LogCenter/style.css?v=1491564457" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/CloudStation/style.css?v=1487831742" />
<link rel="stylesheet" type="text/css" href="sharing/style.css?v=1487017598" />
<link rel="stylesheet" type="text/css" href="../webman/modules/FileBrowser/style.css?v=1493365157" />
<link rel="stylesheet" type="text/css" href="../webman/modules/FileBrowser/custom_template.css?v=1493365157" />

</head>
<body role="application">
<img id="sds-wallpaper" />
<!-- Don't contain any text node to avoid IE insertBefore bug -->
<div id="sds-login-dialog-form" style="position: absolute; top: -10000px; left: -10000px;"><form id="login-form" class="x-plain-body" method="POST" action="webman/login.cgi" target="login_iframe"><input type="text" class="x-form-text" i$
<div id="sds-apply-preview-form" style="position: absolute; top: -10000px; left: -10000px;"><form id="preview-form" class="x-plain-body" method="POST" action="webman/modules/ControlPanel/modules/dsm.cgi" target="preview_iframe"><input t$
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Desktop.Defs&version=1&method=getjs&v=1490835481"></script>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Desktop.JSUIString&version=1&method=getjs&lang=enu&v=1490812579"></script>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Desktop.UIString&version=1&method=getjs&lang=enu&v=1490812581"></script>
<script type="text/javascript" src="scripts/prototype-1.7.2/prototype.js?v=1486065883"></script>
<script type="text/javascript" src="scripts/ext-3/adapter/ext/ext-base.js?v=1486065882"></script>
<script type="text/javascript" src="scripts/ext-3/ext-all.js?v=1486065882"></script>
<script type="text/javascript" src="scripts/ext-3/ux/ux-all.js?v=1486065882"></script>
<script type="text/javascript" src="scripts/scrollbar/flexcroll.js?v=1486065883"></script>
<script type="text/javascript" src="synoSDSjslib/sds.js?v=1486065904"></script>
<script type="text/javascript" src="sharing/sharing.js?v=1487017598"></script>
<script type="text/javascript" src="../wfmlogindialog.js?v=1493365157"></script>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Sharing.Session&version=1&method=get&sharing_id="Ql813G3d5"&sharing_status="none"&v=1487017263"></script>

<script type="text/javascript" src="webman/security.cgi"></script>
<div class="pre-load-x-window-br"></div>
</body>
</html>

sanrega · 28.04.2017

У меня подключение защищено https, порт для webdav 5006. Webdav-сервер настроен и используется. В настройках Webdav-сервера включил анонимную учетную запись. Затем создал шару, доступ к которой на чтение дал этому самому анонимному пользователю, выложил туда тестовый файл. При попытке прямого скачивания файла через браузер, браузер ругается на несовпадение сертификата (доступ по айпи, сертификат от Synologу). Игнорируем предупреждение, появляется форма авторизации, ничего туда не пишем, просто ОК, файл открывается. А вот через терминал файл по прямой ссылке удалось скачать с помощью такой команды:

 

wget --no-check-certificate --http-user= --http-password= https://здесьмойайпи:5006/webdavshare/synotest.txt

--2017-04-28 17:14:37-- https://здесьмойапи:5006/webdavshare/synotest.txt

Подключение к здесьмойайпи:5006... соединение установлено.

ПРЕДУПРЕЖДЕНИЕ: невозможно проверить сертификат здесьмойайпи, выпущенный «CN=Synology Inc. CA,O=Synology Inc.,L=Taipei,C=TW»:

Невозможно локально проверить подлинность запрашивающего.

ПРЕДУПРЕЖДЕНИЕ: Общее название сертификата «synology.com» не совпадает с именем запрошенного узла «здесьмойайпи».

HTTP-запрос отправлен. Ожидание ответа... 401 Authorization Required

Выбранная аутентификация: Basic realm="SYNO_WebDAV Storage"

Повторное использование соединения с здесьмойайпи:5006.

HTTP-запрос отправлен. Ожидание ответа... 200 OK

Длина: 8 [text/plain]

Сохранение в каталог: ««synotest.txt»».

 

synotest.txt 100%[==================================================================>] 8 --.-KB/s in 0s

 

2017-04-28 17:14:37 (245 KB/s) - «synotest.txt» сохранён [8/8]

 

nano synotest.txt

 

testsyno

 

Всё работает :)

 

PS Если подключаться по простому http и поискать в настройках (мне лень :lol: ) где отключается запрос авторизации при разрешенном анонимном подключении, то получится то, что требуется - прямой доступ по ссылке без дополнительных аргументов wget и без необходимости подтверждать пустые учетные данные в браузере.

nitsik · 28.04.2017
У меня подключение защищено https, порт для webdav 5006. Webdav-сервер настроен и используется. В настройках Webdav-сервера включил анонимную учетную запись. Затем создал шару, доступ к которой на чтение дал этому самому анонимному пользователю, выложил туда тестовый файл. При попытке прямого скачивания файла через браузер, браузер ругается на несовпадение сертификата (доступ по айпи, сертификат от Synologу). Игнорируем предупреждение, появляется форма авторизации, ничего туда не пишем, просто ОК, файл открывается. А вот через терминал файл по прямой ссылке удалось скачать с помощью такой команды:

 

wget --no-check-certificate --http-user= --http-password= https://здесьмойайпи:5006/webdavshare/synotest.txt

--2017-04-28 17:14:37-- https://здесьмойапи:5006/webdavshare/synotest.txt

Подключение к здесьмойайпи:5006... соединение установлено.

ПРЕДУПРЕЖДЕНИЕ: невозможно проверить сертификат здесьмойайпи, выпущенный «CN=Synology Inc. CA,O=Synology Inc.,L=Taipei,C=TW»:

Невозможно локально проверить подлинность запрашивающего.

ПРЕДУПРЕЖДЕНИЕ: Общее название сертификата «synology.com» не совпадает с именем запрошенного узла «здесьмойайпи».

HTTP-запрос отправлен. Ожидание ответа... 401 Authorization Required

Выбранная аутентификация: Basic realm="SYNO_WebDAV Storage"

Повторное использование соединения с здесьмойайпи:5006.

HTTP-запрос отправлен. Ожидание ответа... 200 OK

Длина: 8 [text/plain]

Сохранение в каталог: ««synotest.txt»».

 

synotest.txt 100%[==================================================================>] 8 --.-KB/s in 0s

 

2017-04-28 17:14:37 (245 KB/s) - «synotest.txt» сохранён [8/8]

 

nano synotest.txt

 

testsyno

 

Всё работает :)

Спасибо, вариант, но сделал все таки через веб станцию через привязку поддомена. А не знаете, можно ли через веб станцию сделать не через поддомен, а через реальный ip? Создать виртуальный хост с ip-адресом в имени хоста не получилось...

sanrega · 28.04.2017
nitsik, про веб-станцию мало что знаю.
polanat · 28.04.2017
Нет, через выделенный ip провайдера.

Понятно. Что такое GoFile не знаем ;) Тогда зайду с другого боку - галка "Обмен файлами" в закладке "Дополнительно" в секции "QuickConnect" стоит или нет? Сам QuickConnect включен или нет?

 

PS Для ликбеза -> Свободный доступ всех кто хошь к общей папке? Дыра безопасности?, ... по ссылке общего доступа

nitsik · 28.04.2017
nitsik, про веб-станцию мало что знаю.

Сделал также по webdav, все равно получается громоздкая команда, даже если по http, интересно, можно ли как-то отключить запрос авторизации при доступе к файлу, чтоб избавиться от --http-user= --http-password= ?