Как сделать раздачу файлов с домашнего компьютера с серым IP

Если ссылки на них расположены на обычном shared-хостинге

Настройки отображения темы Показывать по сообщений с сортировкой .
Выводить , отправленные .
Страницы:
  • 1
  • 2
Распечатать
К данной теме присоединены сообщения из темы «Первые дни после возвращения к обычной жизни»
Aksion
Участник
Нет Всего сообщений: 804
Зарегистрирован: 14 янв. 2017 г., 02:40
Рейтинг пользователя: 11

0
#2
4X_Pro написал(а):
А как именно ты это делаешь?

присоединяюсь. 
А вообще можно так забирать файлы с компа клиента с серым IP на сервер ?

MadTechGuy
Единомышленник
Всего сообщений: 384
Зарегистрирован: 29 июн. 2018 г., 09:36
Рейтинг пользователя: 58

1
#3
Aksion написал(а):
А вообще можно так забирать файлы с компа клиента с серым IP на сервер ?

Так точно нет. Nginx сам по себе upload не умеет, если только с помощью каких-то модулей. А в чём у тебя задача или неудобство заключается? Как по мне, нет ничего удобнее, чем sshfs. И ещё есть такие сервера, как servefile, miniserve (самый функциональный и производительный).

Aksion
Участник
Нет Всего сообщений: 804
Зарегистрирован: 14 янв. 2017 г., 02:40
Рейтинг пользователя: 11

0
#4
10geek написал(а):
А в чём у тебя задача или неудобство заключается?

у меня задача средствами обычного дешевого хостинга (я так понимаю где только доступен апач, нгинкс, рнр и БД) забирать файлы с компа с серым IP. 
Пока я смог реализовать это только через IPFS, и то через шлюз чужой, то есть я зависим.
Пример тут.
Вот я же могу здесь добавить файл в комментарий...хотя я на сером IP и еще и за NATом. Просто как это автоматизировать может можно.
Причем мне надо чтобы ВЕБсервер просто забирал файл и отдавал в другую сторону уже в составе cтраницы, или отдельно, тому кто запросил, но не хранил у себя. (ну или хранил как минимум некоторое время - недолго и стирал), хотя для больших файлов типа видео, лучше чтобы и не хранил вообще на сервере

MadTechGuy
Единомышленник
Всего сообщений: 384
Зарегистрирован: 29 июн. 2018 г., 09:36
Рейтинг пользователя: 58

1
#5
Но ведь даже у самого отстойного хостера каким-то образом предусмотрена загрузка файлов, через веб-морду, FTP или может даже SFTP. Но на крайняк можно воспользоваться чем-нибудь вроде Encode Explorer. Либо самому написать простенький скрипт загрузки файлов, если есть опыт и желание. Главное — не допускать возможность загрузки неопознанными лицами файлов на сервер, тем более тех, которые могут быть выполнены сервером (например *.php файлов).

Aksion
Участник
Нет Всего сообщений: 804
Зарегистрирован: 14 янв. 2017 г., 02:40
Рейтинг пользователя: 11

0
. Редактировалось 1 раз, последний — #6
Мне надо чтобы не я загружал, и не на сервер. А сайт сам забирал файлы которые лежат на удаленном компе с серым IP (у себя не хранил), а пересылал дальше тому кто открыл сайт. то есть пользовался моим компом как сетевой папкой. На сервере должен лежать только что то типа index.html, а картинки, видео, и прочее медиа, он забирал бы с моего компа.
загрузить то я могу на сервер. Проблема то именно в том чтобы не загружать туда, потому что места там мало. 
Мне надо чтобы сайт не загружал, а временно подгружал медиа, когда создает страницу для отдачи посетителю (то есть как бы перенаправлял)

MadTechGuy
Единомышленник
Всего сообщений: 384
Зарегистрирован: 29 июн. 2018 г., 09:36
Рейтинг пользователя: 58

1
#7
Aksion написал(а):
просто забирал файл и отдавал в другую сторону уже в составе cтраницы, или отдельно, тому кто запросил, но не хранил у себя

А вот это непонятно — как это, чтобы забирал, но не хранил у себя. Чтобы файл передавался напрямую от клиента (например, тебя) к другому клиенту — это можно, но сложно. Это делается на JavaScript средствами WebRTC, а если клиенты могут быть за NATом (а они могут), то понадобятся STUN/TURN сервера. Веб-звонилки типа Jitsi работают по такому принципу. Я раньше когда-то хотел написать свою P2P звонилку, и даже написал тестовый вариант, но так и не доделал. И с этими серверами я не заморачивался. А если просто отдать файл с сервера и сразу же после отдачи удалить его на сервере, то тут возникает проблема с тем, чтобы определить, докачал пользователь файл или нет, т. к. отдаёт файл не PHP, а веб-сервер, и знает об этом только он. А если нужно раз в сутки подчищать старые файлы (по времени доступа), то можно добавить в crontab задание, если хостер даёт доступ к cron ("+7" = одна неделя):
0 0 * * *       find /путь/к/каталогу/с/файлами -type f -atime +7 -exec rm -f {} \;


4X_Pro
Создатель сайта
Всего сообщений: 3758
Зарегистрирован: 9 дек. 2015 г., 19:20
Рейтинг пользователя: 1895

1
. Редактировалось 1 раз, последний — #8
У Aksionа задача в том, чтобы раздавать с домашнего компа большие файлы, которые просто на хостинге не умещаются.
Мне, кстати, пришло в голову, как это можно сделать, но решение будет дико тормозное в плане скорости и требеует своего VDS.
Суть в следующем: поднимаем на домашнем компьютере SSH-сервер. Далее с домашнего компьютера подключаемся по SSH к серверу и делаем проброс порта: порт 22 домашенго компьютера отображаем на порт 2022 на сервере (вечно путаюсь, прямой это проброс или обратный). Далее на сервере монтируем sshfs, указав в качестве адреса localhost:2022. Т.е. что-то вроде mount-t sshfs localhost:2022/your/home/path /server/path.
А дальше файлы будут видны на сервере по адресу /server/path, для него делаем поддомен, где указываем в качестве DocumentRoot /server/path и раздаём.
Ну или возвращаемсяк варианту с tailscale — поднимаем сервер на домашнем компьютере и пробрасываем его наружу с помощью tailscale (но там будет домен 4-ого уровня в зоне tailscale.org или net, не помню.)

Ребята, давайте жить спокойно!

MadTechGuy
Единомышленник
Всего сообщений: 384
Зарегистрирован: 29 июн. 2018 г., 09:36
Рейтинг пользователя: 58

1
. Редактировалось 1 раз, последний — #9
На дешёвом shared-хостинге явно не будет никакого sshfs с FUSE, а то и даже SSH-сервера (но это всё же редкость). С WebRTC вариант, скорее всего, реальный, но только если готов с ним разбираться и заниматься разработкой под него (честно, я бы не захотел без веской причины с ним заморачиваться).

А нельзя ли что-нибудь придумать с UPnP (думаю, вряд ли, но всё же)? Статья на тему, обсуждение на LORе.

Либо законнектиться по SSH на сервер хостера и пробросить на него порт, на котором работает локальный веб-сервер. И каким-то образом сделать так, чтобы сервер хостера перенаправлял запросы на этот порт, т. е. работал по сути как прокси. Либо чтобы тот удалённый порт, на который выполняется проброс, принимал соединения извне, а не только с localhost, как это по умолчанию.

А если ничто из этого не вариант, то тогда надо искать какой-то P2P-софт, который может передавать файлы между клиентами с «серыми» IP.

MadTechGuy
Единомышленник
Всего сообщений: 384
Зарегистрирован: 29 июн. 2018 г., 09:36
Рейтинг пользователя: 58

1
. Редактировалось 1 раз, последний — #10
Вот примерно то, что я писал про WebRTC, только не на любой хостинг поставишь: https://sendfiles.dev/

Следующие сообщения >>>
Страницы:
  • 1
  • 2
Распечатать

У вас нет прав для отправки сообщений в эту тему.

Задать вопрос

Здесь можно задать мне вопрос или спросить совета по любой теме, затронутой в блогах или на форуме. После того, как я отвечу, вопрос и ответ появятся в соответствующем разделе. Но не забываем, что я — сторонник slow life, поэтому каких-либо сроков ответов не обещаю. Самые интересные вопросы станут основой для новых тем на форуме или записей в блоге.
Сразу предупреждаю: глупости, провокации, троллинг и тому подобное летит прямо в /dev/null.