Се­год­ня я вытащу на пуб­лику еще один редак­цион­ный спор: в нем мне раз за разом рас­ска­зыва­ют, что заливать сай­ты на FTP — это несов­ремен­но и чуть ли не стыд­но, а я упор­но нас­таиваю на том, что это прек­расный, прос­той и надеж­ный спо­соб, который мы если не потеря­ли, то пос­тепен­но теря­ем.

Рань­ше (то есть в девянос­тые и начало нулевых) хос­тинг был все­го двух видов: Dedicated и Shared. В пер­вом слу­чае ты получа­ешь сер­вер опре­делен­ной кон­фигура­ции — и делай с ним, что хочешь.

Shared Hosting — аль­тер­натива для прос­тых людей и малых орга­низа­ций. Пла­тишь нем­ного денег и получа­ешь дос­туп к админ­ской панели, пап­ке на FTP и реляци­онной БД (или нес­коль­ким). Все, что нуж­но, что­бы раз­вернуть сайт! Если понадо­бят­ся какие‑то нас­трой­ки веб‑сер­вера, то для это­го в Apache есть кон­фиги .htaccess, которые кла­дут­ся пря­мо в пап­ку с сай­том.

Не­дос­татков у это­го метода мас­са. Мас­шта­биру­емость — никакая, дос­тупа по SSH обыч­но нет, уста­новить что‑то на уров­не сис­темы невоз­можно, пос­тавить задачу в cron — никак. Да и с безопас­ностью у обыч­ного FTP не все в поряд­ке из‑за отсутс­твия шиф­рования.

На замену Shared Hosting приш­ло сра­зу мно­го раз­ных вещей, каж­дая из них — для сво­ей катего­рии поль­зовате­лей.

VPS и VDS — замена для тех, кто меч­тал о выделен­ном сер­вере (Dedicated), но не хотел пла­тить мно­го. Тут тебе и SSH, и cron, и уста­нов­ка любых при­ложе­ний. Мно­гие про­вай­деры сей­час даже раз­реша­ют заг­рузить ISO с опе­раци­онкой. Оче­вид­ный недос­таток — сис­тему при­дет­ся адми­нить: нас­тра­ивать и потом обновлять веб‑сер­вер, обратный прок­си, базу дан­ных, фрей­мвор­ки и все осталь­ное хозяй­ство. Уско­рить деп­лой мож­но при помощи Docker, но порог вхож­дения это толь­ко повыша­ет.

Ес­ли нуж­на мас­шта­биру­емость, то став­ки рас­тут еще силь­нее: для серь­езных дел теперь нужен облачный хос­тинг, Kubernetes, вир­туаль­ная сет­ка и про­чие радос­ти. Не то что­бы в этом было что‑то пло­хое, прос­то это индус­три­аль­ный уро­вень, где под­дер­жкой может занимать­ся целая коман­да.

Для тех, кто не хочет адми­нить, есть дру­гое решение — PaaS-плат­формы вро­де Heroku и Google App Engine, а так­же лям­бда‑фун­кции, они же «бес­сервер­ный хос­тинг». В пер­вом слу­чае мы завязы­ваем­ся на какое‑то кон­крет­ное заранее обус­тро­енное окру­жение со сво­ими осо­бен­ностя­ми, во вто­ром вооб­ще заг­ружа­ем толь­ко прог­рам­мный код и даже дан­ные хра­ним где‑то отдель­но. Нем­ного в сто­роне сто­ит Vercel — уди­витель­ное тво­рение фрон­тенде­ров, которые решили заново изоб­рести бэкенд.

Добро пожаловать в современный фронтенд
Доб­ро пожало­вать в сов­ремен­ный фрон­тенд

Все эти шту­ки тоже хороши, но ори­енти­рова­ны в пер­вую оче­редь на веб‑при­ложе­ния. То есть нацеле­ны на прог­раммис­тов, име­ют опре­делен­ный порог вхож­дения и не дают прос­то взять и выложить что‑то в интернет.

Чуть более дру­жес­твен­ны к нович­кам облачные сре­ды раз­работ­ки вро­де Glitch и Replit. Некото­рые из них готовы хос­тить ста­тику в разум­ных пре­делах и поз­воля­ют дер­жать сер­вис пер­манен­тно запущен­ным, при­чем даже на бес­плат­ных тарифах.

Glitch — хорошая попытка снова сделать вебдев веселым
Glitch — хорошая попыт­ка сно­ва сде­лать веб­дев веселым

Ну и наконец, для прос­тых людей, не обу­чен­ных искусс­твам кодин­га и адми­нис­три­рова­ния, есть сер­висы вро­де Wix.com, «Тиль­ды» и про­чих конс­трук­торов. Но рас­смат­ривать их как хос­тинг было бы стран­но: тут нуж­но пла­тить нес­коль­ко тысяч руб­лей в месяц за сме­хот­ворное количес­тво дан­ных и тра­фика. Ско­рее это пла­та за поль­зователь­ский софт, готовые шаб­лоны и допол­нитель­ные сер­висы вро­де при­ема пла­тежей.

В общем, все перечис­ленное совер­шенно не под­ходит, если ты пла­ниру­ешь либо захос­тить ста­тичес­кий сайт, либо прос­то кинуть какой‑то файл и сде­лать его дос­тупным через HTTP. Ну или запус­тить прос­тень­кое веб‑при­ложе­ние, не нас­тра­ивая весь стек и не адап­тируя свой код к при­чудам окру­жения.

Для ста­тичес­ких сай­тов, впро­чем, есть еще два неп­лохих вари­анта: ба­кеты S3 и GitHub Pages. С тех пор как бес­плат­ные акка­унты GitHub ста­ло воз­можно делать при­ват­ными, он стал поч­ти иде­аль­ной пло­щад­кой для неболь­шого лич­ного сай­та.

Нуж­но толь­ко понимать, что сер­вис пре­дос­тавля­ется «по доб­роте душев­ной», то есть толь­ко до тех пор, пока в Microsoft его счи­тают выгод­ным и полез­ным. Если не веришь, что его ког­да‑нибудь могут прек­ратить, вспом­ни судь­бу GeoCities.

Объ­ектное хра­нили­ще S3 такого недос­татка лишено и точ­но не дол­жно никуда про­пасть, пока ты пла­тишь копе­ечку. Вот толь­ко перевес­ти ее из Рос­сии теперь неп­росто; ана­логи S3 есть у «Яндекса» и Mail.ru, но ста­тичес­кие сай­ты, нас­коль­ко я знаю, там хос­тить не вый­дет.

К тому же бакет S3 тре­бует еди­нора­зовой, но заковы­рис­той нас­трой­ки, преж­де чем ста­нет сай­том. Что­бы фай­лы из него было вид­но из интерне­та, понадо­бит­ся под­клю­чить роутинг Amazon Route 53 и опре­делен­ным обра­зом нас­тро­ить по­лити­ки дос­тупа.

info

Как‑то раз я написал статью о стат­генера­торе Lektor. Он раз­работан на Python, а соз­дал его автор минима­лис­тично­го веб‑фрей­мвор­ка Flask и шаб­лониза­тора Jinja2.

Кста­ти, если хочешь сэконо­мить, можешь поп­робовать замутить какое‑то сочета­ние из ста­тичес­кого сай­та на GitHub и бес­плат­ных воз­можнос­тей облачной IDE вро­де Glitch или Replit. Мож­но еще поп­робовать добавить Firebase для хра­нения дан­ных, там впол­не воль­гот­ные лимиты на бес­плат­ное исполь­зование. Но это все же нем­ного из серии «как сде­лать трол­лей­бус из бухан­ки хле­ба» — занят­но, но не очень надеж­но и осно­вано на кон­крет­ных про­дук­тах.

Ну и наконец, сайт мож­но захос­тить пря­мо у себя дома — на сви­сающей с пач­корда Raspberry Pi. Дос­таточ­но купить ста­тичес­кий IP и про­писать NAT на роуте­ре. Вый­дет даже не Dedicated, а вла­дение сво­им дата‑цен­тром! Но, думаю, недос­татки такого решения впол­не оче­вид­ны.

По­луча­ется, что уни­каль­ность Shared-хос­тинга была в прос­тоте и стан­дарти­зации. Ты всег­да мог рас­счи­тывать на один и тот же стек LAMP и любимые все­ми хос­терами cPanel и phpMyAdmin. Да, конеч­но, сей­час все это уже пол­ное старье. Но тот же уро­вень перено­симос­ти теперь дос­тижим толь­ко с вир­туаль­ным сер­вером и Docker. Тот же уро­вень лег­кости — прос­то никак.

Хо­ронить ста­роре­жим­ный хос­тинг пока ранова­то: его еще пре­дос­тавля­ют ком­пании вро­де BlueHost, HostGator, SiteGround и про­чие. Но из мей­нстри­ма он прев­ратил­ся в ред­кость и дос­тупен все боль­ше как легаси.

Мне кажет­ся, при изо­билии самых раз­ных вари­антов пря­мой замены ему так и не при­дума­ли. Перетас­кивать ста­тику и скрип­тики в окно FTP-кли­ента и получать работа­ющий сайт по‑преж­нему чер­тов­ски удоб­но.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    5 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии