Servidor HTML realmente simples para Raspberry Pi

Servidor HTML realmente simples para Raspberry Pi

Estou executando o Ubuntu mate no meu raspberry pi 2 b+ . Quero fazer com que ele hospede um arquivo HTML. Meu problema é que estou com poucos recursos. Por exemplo, com meu programa de uso principal, que funciona 24 horas por dia, 7 dias por semana, não sobra memória para iniciar o Firefox, então preciso de uma solução leve. Não preciso de um site complexo, apenas algo que retorne esse arquivo sample.html se alguém acessarhttp://192.168.178.8(como amostra)

Responder1

Presumo que você realmente queira apenas ler um documento HTML no Raspi, mas o sistema não tem memória suficiente para iniciar seu navegador padrão Firefox.

Você poderia tentar um navegador mais leve como o midori. Instalar com

sudo apt-get install midori


Se você realmente precisa servir as páginas para a LAN local, você precisa instalar um servidor web. nginxé uma boa escolha em termos de recursos.

  1. Instale-o com

    sudo apt-get install nginx-light nginx-common
    

    Existe também um nginx-fullpacote que traz mais funcionalidades, mas não acredito que seja necessário aqui.

    Quando a instalação for concluída, o servidor deverá iniciar automaticamente. Você pode controlá-lo com

    sudo service nginx start/stop/restart/...
    

    Se você navegar agora até o endereço do Raspi, já verá uma página sendo veiculada ("Bem-vindo ao nginx...")

  2. A página de boas-vindas que você vê é veiculada em /var/www/html. A configuração é armazenada em /etc/nginx.

    Se você é preguiçoso e deseja uma solução rápida, basta colocar seus arquivos nesta pasta. Por padrão, um documento index.htmlé entregue. Se não existir, uma árvore de documentos será exibida. O diretório contém, é claro, a página de boas-vindas. Tire-o do caminho primeiro. Se você deseja servir arquivos de uma pasta diferente, continue lendo.

    Existem dois diretórios

    /etc/nginx/sites-available
    /etc/nginx/sites-enabled
    

    O primeiro contém os arquivos de configuração reais, enquanto o segundo contém links para esses sites de configuração. Esses links dizem ao nginx para processar a configuração e servir o site.

Para o seu objetivo basta adaptar um pouco a configuração existente.

  1. Primeiro, exclua o link simbólico paradefault

    sudo rm /etc/nginx/sites-enabled/default
    

    portanto, o servidor não exibirá a página de boas-vindas por padrão.

  2. Agora copie defaulte altere

    cd /etc/nginx/sites-available
    sudo cp default mysite
    

    Nomeie-o como quiser, mais do que mysite.

  3. Abra o arquivo com um editor. A maior parte das configurações está correta, mas você precisa adaptá-las rootpara que aponte para o diretório que contém os arquivos que você deseja servir. Isso é basicamente tudo que você precisa fazer, mas uma opção é bastante útil:

    index: Qual documento é servido quando a raiz do documentohttp://servidor/é navegado.

  4. Recarregue a configuração com

    sudo service nginx reload
    

    e seu Pi deve servir sua página da web!

Responder2

nginxé um servidor web leve, roda bem em Raspi

sudo apt-get -y instalar nginx

Coloque sua página padrão em /var/www/html

Para configuraredite /etc/nginx/nginx.conf

Responder3

Instale o pacote netcat-openbsd. Com isso, o script de shell a seguir oferece um servidor web muito simplista que sempre retorna seu sample.htmlpara qualquer solicitação.

Observe que ele não pode fornecer arquivos adicionais, como imagens, arquivos CSS ou similares.

#!/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

Substitua /path/to/sample.htmlpelo caminho do seu arquivo HTTP real.

informação relacionada