Taula de continguts:

Com fer un servidor web Express amb un Raspberry Pi: 10 passos
Com fer un servidor web Express amb un Raspberry Pi: 10 passos

Vídeo: Com fer un servidor web Express amb un Raspberry Pi: 10 passos

Vídeo: Com fer un servidor web Express amb un Raspberry Pi: 10 passos
Vídeo: Топ 5 скрытых полезных программ Windows 10 2024, De novembre
Anonim
Com fer un servidor web Express amb un Raspberry Pi
Com fer un servidor web Express amb un Raspberry Pi

Aquesta guia us explicarà com aconseguir que el vostre Raspberry Pi allotgi un servidor web, que es pot utilitzar per allotjar llocs web, i fins i tot lleugerament modificat per allotjar molts altres serveis en línia, com ara servidors de jocs o servidors de transmissió de vídeo. Només tractarem com allotjar un servidor web bàsic sense editar el paquet predeterminat.

Materials necessaris:

  • Raspberry Pi (recomanem el Raspberry Pi 3 Model B + ja que té un adaptador sense fils integrat)
  • accés a Internet
  • Targeta SD (32 GB recomanats, 8 GB com a mínim)
  • Teclat USB
  • Ratolí USB
  • Cable HDMI
  • Monitor compatible amb HDMI
  • Accés al tauler de configuració del vostre enrutador (per a reenviament de ports)

Pas 1: inicialitzeu el vostre Raspberry Pi

Inicialitzeu el vostre Raspberry Pi
Inicialitzeu el vostre Raspberry Pi

Introduïu la targeta Micro SD en una altra màquina i instal·leu-hi el sistema operatiu Raspbian mitjançant la guia de https://www.raspberrypi.org si esteu començant per una de nova. En cas contrari, assegureu-vos que la targeta Micro SD estigui inserida al vostre Raspberry Pi.

Pas 2: connecteu els perifèrics i inicieu la sessió

Connecteu els vostres perifèrics i inicieu la sessió
Connecteu els vostres perifèrics i inicieu la sessió

Connecteu el monitor mitjançant el cable HDMI, connecteu el teclat USB, connecteu el ratolí USB i la font d’alimentació al Raspberry Pi.

Inicieu la sessió al Pi un cop s'hagi arrencat amb el nom d'usuari i la contrasenya per defecte si se us demana. El nom d'usuari inicial és "pi" i la contrasenya inicial és "raspberry".

Pas 3: connecteu el Raspberry Pi a Internet

Si teniu accés a un cable Ethernet, simplement connecteu-lo i esteu preparat.

Si utilitzeu Wifi, hi ha un parell de maneres diferents d’aconseguir-ho. Aquesta guia seguirà un enfocament de la finestra del terminal per garantir que, fins i tot si no utilitzeu la GUI de Raspbian, encara podeu connectar-vos.

  1. Obriu una finestra de terminal si utilitzeu una GUI.

    al llarg de la barra de la part superior de la pàgina, hi ha el terminal

  2. Assegureu-vos que el vostre Raspberry Pi detecti el Wifi

    1. Introduïu l'ordre `sudo iwlist wlan0 scan`
    2. Cerqueu el vostre punt d’accés

      1. ESSID és el nom del punt d'accés
      2. IE és l'autenticació utilitzada.
  3. Introduïu l'ordre `wpa_cli` per configurar el punt d'accés.
  4. Introduïu "add_network"

    1. Això afegeix una nova xarxa a la vostra llista de configuració.
    2. Això retorna un valor de número únic a la finestra del terminal. La primera xarxa té el número 0 i aquesta guia suposa que esteu configurant la primera xarxa. Si no és així, substituïu el número que hi ha a les ordres pel que ha retornat aquesta ordre.
  5. Configureu la nova xarxa
    1. Introduïu `set_network 0 ssid" ESSID "`

      1. Substitueix l’ESSID pel nom del punt d’accés. Assegureu-vos que el nom del punt d’accés estigui entre cometes.
      2. Recordeu, si l'ordre add_network va retornar un número diferent de 0, substituïu el 0 de l'ordre per qualsevol número que s'hagi retornat
    2. Introduïu `set_network 0 psk" CONTRASENYA"

      1. Substituïu PASSWORD per la contrasenya del punt d'accés. Assegureu-vos que la contrasenya del punt d’accés es troba entre cometes.
      2. Recordeu, si l'ordre add_network va retornar un número diferent de 0, substituïu el 0 de l'ordre per qualsevol número que s'hagi retornat.

  6. Connecteu-vos a la xarxa introduint l'ordre `select_network 0`

    Recordeu, si l'ordre add_network va retornar un número diferent de 0, substituïu el 0 de l'ordre per qualsevol número que s'hagi retornat

  7. Per sortir de l'aplicació, escriviu "surt"

Pas 4: assegureu-vos que el vostre Pi estigui actualitzat

A la finestra del terminal, actualitzeu la llista de paquets del sistema escrivint `sudo apt-get update -y`.

Actualitzeu tots els paquets instal·lats escrivint `sudo apt-get dist-upgrade -y`.

Pas 5: instal·leu NodeJS al Pi

Dins de la finestra del terminal, hem d’instal·lar NodeJS, que és una implementació de JavaScript al costat del servidor. Express utilitza NodeJS per executar-se. Per instal·lar NodeJS, necessitem apt-get-lo al Pi. Introduïu `sudo apt-get install nodejs -y`. Assegureu-vos que NodeJS està instal·lat introduint `nodejs -v` per obtenir el número de versió actual instal·lat.

Un cop instal·lat NodeJS, hem d’instal·lar el gestor de paquets Node. Aquest és el gestor de paquets que funciona amb NodeJS per instal·lar mòduls, com ExpressJS. Introduïu `sudo apt-get install npm -y`. Assegureu-vos que NPM està instal·lat escrivint `npm -v` per obtenir el número de versió actual instal·lat.

Pas 6: instal·leu Express i l'Express Generator

Un cop npm instal·lat, escriviu "sudo npm install express -g". Això descarrega ExpressJS al directori global del gestor de paquets, de manera que podeu executar Express a qualsevol carpeta.

A continuació, escriviu "sudo npm install express-generator -g". Es tracta d’un generador de servidors Express per defecte, que és fantàstic per configurar ràpidament un servidor web.

Pas 7: executeu l'Express Generator

Escriviu `sudo express myapp`. Podeu substituir "myapp" per qualsevol cosa que vulgueu anomenar al vostre servidor web.

Això crea una carpeta amb els fitxers necessaris per executar express.

El motor de visualització per defecte serà Pug.

Es recomana estudiar altres opcions i què podeu fer amb Express.

Un cop finalitzat el generador Express, podeu provar si el servidor web funciona. Escriviu `cd myapp` run` npm per entrar a la carpeta que es va generar i, a continuació, escriviu `npm start` que executarà l'aplicació.

Utilitzant el port per defecte, obriu un navegador web i aneu a localhost: 3000. Hauríeu de veure "Express, Benvingut a Express". Heu creat correctament un servidor web Express.

Pas 8: configureu el servidor per executar-se en arrencar

Editeu el fitxer rc.local. Aquest fitxer s’executa cada cop que arrenca el Pi

Feu-ho escrivint "sudo nano /etc/rc.local"

Abans de la línia "exit 0", afegiu la línia següent: "su pi -c‘node /home/pi/myapp/server.js </ dev / null $’"

Substituïu la porció "myapp" de l'estructura de carpetes per la que hagueu anomenat el vostre servidor web.

Deseu el fitxer prement CTRL + x.

Pas 9: redirecció (OPCIONAL)

(OPCIONAL) Portforwarding
(OPCIONAL) Portforwarding

Aquest és un pas clau si voleu que el vostre servidor web pugui visualitzar-se des de fora de la xarxa de casa o de l'escola. Aquest procés serà diferent segons l’encaminador, però la idea continua sent la mateixa. Podeu trobar una guia específica per al vostre enrutador aquí https://portforward.com/router.htm mitjançant el número de model del vostre enrutador. La imatge superior mostra un exemple de com pot ser la pàgina web, extret de portforward.com

  1. Accediu al tauler de control dels routers
  2. Reuneix 2 informació, l'adreça IP interna del raspberry pi i l'adreça IP externa del router

    1. L'adreça IP interna del pi es pot trobar escrivint "sudo ip addr show" al terminal
    2. Podeu trobar l'adreça IP externa escrivint "Quina és la meva adreça IP" a google.
  3. Dins del tauler de configuració dels routers, voleu configurar una regla mitjançant l'adreça IP interna del raspberry pi
  4. trieu TCP i, per al port, podeu fer servir el port que hàgiu definit al servidor de nodes a l'aplicació express, hem utilitzat 1337

Pas 10: accediu al servidor web

Ara podeu accedir al vostre servidor web des d’una ubicació remota. Per provar-lo, només cal que escriviu https:// INTERNAL_IP_ADDRESS: 1337, assegurant-vos de substituir "INTERNAL_IP_ADDRESS" per la IP externa si accediu al servidor web des d’una xarxa externa., o utilitzant la IP interna si hi accediu des de la mateixa xarxa.

Recomanat: