Если
вы хотите
просто потренироваться в написании html страничек то можете
воспользоваться бесплатным neocities.org который как раз для любителей
и создан, плюс имеет функции социальной сети и встроенный редактор html
работающий прямо в браузере. У вас будет сервер и доменное имя второго
уровня мойсайт.neocities.org. Нужно только залить туда файлы сайта и
все.
Однако в случае хостинга дома вы получаете возможность подключать
камеры и вести трансляции, подключить вебсдр (как я и сделал) да и
дисковое пространство определяете вы. Плюс возможность завести
торрентокачалку и давать ей задания откуда угодно, запустить
персональное облако, управлять умным домом, запускать свои серверы
онлайн игр, пользоваться некоторыми оверлейными сетями которые требуют
белый IP типа Perfect dark, запустить сайт в сети tor, i2p, yggdrassil
и другие оверлеи. Да, линк зависит от
отключений электричества и профилактик у провайдера, но и ваша
страничка - не критический сервис. Сайт вроде моего может побыть в
оффлайне полдня и никто от этого не умрет.
Итак, если вы захотели захостить свою страничку дома, то это не
так и сложно. Нам по сути нужны 3 материальные вещи: выход в инет с
внешним IP, доменное имя к которому прявязан IP и некое устройство
которое будет работать сервером. И одна
нематериальна вещь- сам сайт, просто набор файлов который копируется в
определенную папку на сервере.
1:
Внешний IP это адрес по которому будет в сети доступен ваш сервер. Как
раньше в квартиру входил телефонный провод на который поступали звонки
по телефонному номеру который был к нему привязан, так и у кабеля
который входит в вашу квартир от провайдера будет этот адрес, что бы вы
к нему ни подключили. Добывается только у вашего провайдера (на самом
деле есть vpn сервисы которые позволяют дать доступ к серверу даже без
внешнего IP например https://habr.com/ru/articles/674070/, или сервисы
dyndns позволяющие работать с внешним но с динамическим IP).
2: Доменное имя, это адрес сайта типа http://mysite.com, арендуется за
деньги обычно на год, есть варианты с бесплатным первым годом. Можно
обойтись без него, тогда ваш сайт будет открываться по IP который
сложно запомнить, и не будет сканироваться гуглом, следовательно его
невозможно будет найти в поиске. Но процедура аренды простая, и можно
найти недорогое имя. Если у вас динамический IP или нет внешнего IP и
вы используете один из сервисов доступа типа dyndns\vpn то они обычно
дают имя второго уровня, и этот пункт можно пропустить.
3: Также нужно настроить ваш домашний
роутер на проброс порта 80 или 8080 для доступа к серверу (процесс
настройки индивидуален для каждого производителя роутеров, просто
поищите инструкции в интернете).
4: Настроить на сервере
статический IP. Это адрес по которому ваш роутер будет отыскивать
сервер в домашней сети и отправлять ему запросы пришедшие из интернета.
На этот адрес настраивается проброс порта 80 или 8080 в роутере.
Настройка также зависит от используемой ОС (Linux, windows, android).
5:
А вот сервер... Тут много вариантов. Все что нужно для использования
любого вычислительного устройства в качестве сервера - установить на
него программу-вебсервер, и положить ей в рабочую папку написанную вами
веб-страницу.
Everything is a server if you brave enough.
Вариант 1: В роли сервера может выступать и сам роутер с USB портом,
если сайт
относительно простой процессор роутера в состоянии справиться с его
хостингом (персональные странички про хобби - не особо посещаемые
сайты, нагрузка будет невелика).
https://duff.dk/sd/
Впервые так издеваться над роутерами начали наверно году в 2002, когда
для популярной модели WRT54G была создана сторонняя прошивка DD-WRT, в
которой можно было конфигурировать GPIO выводы процессора. Просто
сконфигурируйте пару выводов как SPI, припаяйте SD картридер,
смонтируйте карточку в файловой системе и заливайте на нее файлы сайта.
В сети долго висело несколько страничек которые хостились на роутерах.
Это самая ранняя модификация этой железяки по добавлению хранилища, в
поздних ревизиях добавлялись пара USB портов. В наше время есть дешевые
TP-Link с USB портами, которые легко прошиваются в DDWRT или Openwrt и
трюки с хостингом на них выполняются куда проще.
Нужно просто прошить роутер в dd-wrt или openwrt, установить доступный
вебсервер, ( lighttpd, nginx или apache), подключить флешку (у
самого роутера обычно мало памяти),
сконфигурировать вебсервер на работу с папкой находящейся на USB flash
и закинуть на флешку файлы сайта.
https://openwrt.org/docs/guide-user/services/webserver/lighttpd
Для начала такого сервера вполне хватит. Я правда пошел другим путем: я
купил одноплатный компьютер с двумя ethernet портами и настроил на нем
сервер и роутинг, плюс файлохранилище на USB-HDD.
Вариант 2: девайсы на андроиде до 9 версии включительно (в 10 изменили
правила безопасности). Можно на старый смартфон поставить
вебсервер, и подключить его к роутеру по wifi, или используя
otg-ethernet адаптер, если есть otg конечно.
Что касается хостинга на телефоне то андроид - не первая смартфонная
ось на которой такое возможно.
Вот вам вебсервер для Windows Mobile
На PalmOS был сервер, и не один.
http://www.citi.umich.edu/u/rees/pilot/
Плюс у КПК на Winmobile и PalmOS были слоты для Compact Flash карт
памяти, которые могли работать и как слоты расширения для разных
устройств. С Ethernet - CF адаптером вполне можно держать сайтик на
таком КПК
Nokia Mobile Web Server позволял
запускать вебстраницы на смартфонах Nokia s60. И не только статику, был
доступ к спискам файлов, камере, работал php. Была встроенная cms для
ведения блога. Учитывая покрытие мобильных сетей тогда такой блог
переставал быть доступен когда владелец телефона спускался в метро.
Возвращаясь в наши дни можно купить дешевый тв-бокс на андроиде, на
алике они стоят от 1,5к, имеют eternet порты, и накатить вебсервер на
него (если на нем стоит андроид до 10 версии)
Если задротствовать то можно подобрать тв-бокс под который портирован
линукс, поставить линь, в нем поставить и настроить вебсервер. Это даст
небольшой прирост производительности.
Например я за 1,5к купил MXQpro 5g 4k, внутри оказалась плата с 1гб
ram, 8гб nand и камнем rk3228s.
Установка линукса на него описана здесь:
https://forum.armbian.com/topic/12656-csc-armbian-for-rk322x-tv-boxes
Нужно на SD карту записать образ multitool, на флешке появится два
раздела, один из них в формате ntfs с папкой images. В эту папку нужно
положить образ Armbian подходящий к вашей приставке. Воткнуть SD карту
в и просто включить питание, подключив клавиатуру и тв, а дальше
работая с меню стереть nand и записать на него образ armbian, выключить
приставку, вытащить карту, включить и все, вы в armbian.
Дальше ставим вебсервер и кидаем в папку /var/www/html нашу
веб-страничку.
Можно зайти в утилиту sudo-armbian-config, поставить RDP сервер и
заходить через него на тв-приставку.
Вариант интерестен тем что вы полчаете за небольшой прайс одноплатный
компьютер с встроенным носителем, корпус и блок питания, даже радиатор
на чипе (чего нет например в raspberry pi).
Вариант 3: Старый ноутбук\компьютер.
Тут собсно без комментариев, все что может гонять электроны в состоянии
хостить вебсайт. Как минимум есть один сайт который хостится на
ноутбуке с 286 процессором.
Или на 5мегагерцовом процессоре и сетевой карте подключенной через LPT
Или древнем спарковском сервере
И целый хостинг на Amiga 1200
Вариант 4: Одноплатники.
Пункт последний по счету возможно зря, у одноплаты есть как минусы так
и
плюсы. В качестве носителя в них используются не особо надежные SD
карточки, но есть вариант загружать их с USB FLASH или USB SSD/HDD.
Также есть относительно дешевые девайсы с m.2 NVME интерфейсом или sata
портами. Также есть UART интерфейс который позволяет настраивать сервер
не подключая к нему монитор с клавиатурой и не поднимая SSH, достаточно
купить дешевый usb-uart адаптер. В конце концов во времена Raspberry Pi
3 на кластере из 8 этих плат захостили сайт проекта Raspberry pi на
сутки, и ничего, все работало, сайт обслужил миллионы запросов.
Все вышеописанное кстати не относится к raspberry pi, у моделей B и
прочих "общего назначения" нет ни ssd ни nvme, даже UART там
программный и не запускается сразу после подачи питания как у Orange pi
или Rockpi например.
В зависимости от задач есть широкий выбор одноплаты, от (относительно)
слабеньких моделей типа Orangepi zero или Rockpi s до эквивалентных
процессорам Core i5 платок на rk3358 Orange pi 5
Плюс у одноплаты есть GPIO контакты, которыми можно управлять или
считывать с них данные.