Я запускаю Ubuntu Mate на моем Raspberry Pi 2 B+. Я хочу сделать его хостингом файла HTMl. Моя проблема в том, что у меня мало ресурсов. Например, с моей основной программой использования, которая работает на нем 24/7, не осталось памяти для запуска Firefox, поэтому мне нужно легкое решение. Мне не нужен сложный сайт, просто что-то, что возвращает этот файл sample.html, если кто-то заходитhttp://192.168.178.8(как образец)
решение1
Я так понимаю, что вы просто хотите прочитать HTML-документ на Raspberry Pi, но в системе недостаточно памяти для запуска браузера по умолчанию Firefox.
Вы можете попробовать более легкий браузер, например midori
. Установите с помощью
sudo apt-get install midori
Если вам действительно необходимо обслуживать страницы в локальной сети, вам необходимо установить веб-сервер.
nginx
Это хороший выбор с точки зрения ресурсов.
Установите его с помощью
sudo apt-get install nginx-light nginx-common
Существует также
nginx-full
пакет, который обеспечивает большую функциональность, но я не думаю, что он здесь нужен.После завершения установки сервер должен запуститься автоматически. Вы можете управлять им с помощью
sudo service nginx start/stop/restart/...
Если вы сейчас перейдете по адресу Raspi, вы уже увидите обслуживаемую страницу («Добро пожаловать в nginx...»).
Страница приветствия, которую вы видите, обслуживается из
/var/www/html
. Конфигурация хранится в/etc/nginx
.Если вы ленивы и хотите быстро исправить ситуацию, просто поместите свои файлы в эту папку. По умолчанию обслуживается документ
index.html
. Если его нет, вместо него будет обслуживаться дерево документов. Каталог, конечно же, содержит страницу приветствия. Сначала уберите ее с дороги. Если вы хотите обслуживать файлы из другой папки, читайте дальше.Существует два каталога
/etc/nginx/sites-available /etc/nginx/sites-enabled
Первый содержит фактические файлы конфигурации, а второй содержит ссылки на эти сайты конфигурации. Эти ссылки говорят nginx обработать конфигурацию и обслуживать сайт.
Для вашей цели достаточно немного адаптировать существующую конфигурацию.
Сначала удалите символическую ссылку на
default
sudo rm /etc/nginx/sites-enabled/default
поэтому сервер не будет обслуживать страницу приветствия по умолчанию.
Теперь скопируйте
default
и измените его.cd /etc/nginx/sites-available sudo cp default mysite
Назовите его так, как вам больше нравится, чем
mysite
.Откройте файл в редакторе. Большинство настроек подходят, но вам нужно адаптировать их
root
так, чтобы они указывали на каталог, содержащий файлы, которые вы хотите обслуживать. Это, в принципе, все, что вам нужно сделать, но одна опция весьма полезна:index
: Какой документ обслуживается, когда корневой документhttp://сервер/просматривается.Перезагрузите конфигурацию с помощью
sudo service nginx reload
и ваш Pi должен обслуживать вашу веб-страницу!
решение2
nginxлегкий веб-сервер, хорошо работает на Raspberry Pi
sudo apt-get -y установить nginx
Поместите вашу страницу по умолчанию в /var/www/html
Для настройкиредактировать /etc/nginx/nginx.conf
решение3
Установите пакет netcat-openbsd
. С этим следующим скриптом оболочки вы получите очень простой веб-сервер, который всегда возвращает ваш sample.html
для любого запроса.
Обратите внимание, что он не может предоставить никаких дополнительных файлов, таких как изображения, файлы CSS и т. п.
#!/bin/sh
while (
printf "HTTP/1.1 200 OK\r\n"
printf "Content-Type: text/html\r\n"
printf "\r\n"
cat /path/to/sample.html
) | nc -l 80 >/dev/null; do echo; done
Замените /path/to/sample.html
на путь к вашему фактическому HTTP-файлу.