Как стать автором
Обновить

Комментарии 10

Спасибо что поделились опытом, но, может быть, стоило подождать пока pull-request одобрят и смерджат? Вдруг там в процессе что-нибудь еще выяснится, достойное добавления в статью?
пфф, этот код не сделать идеальней ;)
image

Я не совсем понял цель всего этого — Вам просто не нравится выгружать файл на сервер?


Потому что Ваше решение особо ничего удобного к процессу не добавило кроме странного костыля, который просто позволяет более удобно файл текст передать через буфер обмена.


Такие варианты рассматривались?


  1. WinSCP — CTRL+C -> CTRL+V


  2. Bitvise SSH Client — активируем файловый клиент, потом CTRL+C -> CTRL+V


  3. Putty PSCP/PSFTP + Plink, потребуется настроить сертификаты, потом батником из командной строки:


    pscp -i key.ppk config.zip user@host:~/config.zip
    plink -i key user@host unzip ~/coinfig.zip

    причем второй строкой можно запускать скрипт на сервере, который вообще всё дальше сам сделает, аккуратно разложив файлы по местам и перезагрузив всё нужное.


  4. PhantomJS — не силён, но подозреваю, он сам из консоли сервера по ссылке зайдет и сохранит сгенеренный файл, если его попросит правильно программист, так что можно прямо на сервере запускать


кажется, вы не поняли сути. да, можно пользоваться wins p, putty, я там даже написал, что юзаю nc для этого, но это избыточно. мне нужен конфиг на сервере и я не хочу выступать прокси сервером. но т.к. это чистый html/js, прямой ссылки для скачивания зипа нет и не будет, для этого нужна данная хитрость.

вам не нужен winscp или другие средства, вы просто сгенерили конфиг, нажали кнопку, перешли в консоль и вставили текст из буфера в косоль

Я долго вчитывался, пытаясь понять — как же сгенеренный браузером файл отдать в curl/wget, но чуда не случилось :)
Просто более удобное проксирование :(


Костыли для большего удобства наше всё :) Да, спасибо за ссылку на сервис.

Сравним количество действий, чтобы получить конфиг на сервере?
В моём случае я часто пользуюсь netcat для подобных целей:


  1. скачать zip на локальную тачку
  2. на сервере запускаем
    nc -l 31337 > config.zip
  3. на клиенте запускаем
    nc 1.2.3.4 31337 < ~/Downloads/config.zip

не так и сложно, верно? В вашем случае с winscp/putty итп нужно будет ещё запускать и коннектится через эти эти утилиты. А теперь сравните с набором действий, что предлагаю я:


  1. Жмём на кнопку на сайте
  2. Жмём Ctrl+V в консоли сервера

хз, может для вас это не такая частая задача и запустить winscp не проблема раз в год, меня же частенько бесит, что какие-то файлы приходится передавать на сервер через nc

Кстати, можно смонтировать директорию с сервера по NFS/SSHFS и сохранять файл прямо на неё.
Там же все на фронте. Сервер только статику отдает
речь про то, что на винде можно примонтировать (да и не только на винде, но автор коммента говорит о винде) удалённую sshfs (обычный ssh/sftp туннель) и сохранять сгенерированный конфиг сразу на примонтированный диск. Таких решений можно придумать много, но смысл поста был в том, чтобы вообще не пользоваться внешними ресурсами
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории