Información general

Node.js es la N y Express.js es la E en la pila MEAN, una de las pilas web más populares para el hosting de VPS.

Express.js es el marco de aplicación web de Node.js más popular. Express abstrae gran parte de la codificación necesaria para el backend de una aplicación, lo que hace que el desarrollo de la aplicación sea mucho más fácil y eficiente. Eso significa que no tienes que reinventar la rueda.

Nota especial: algunos de los principales servicios de hosting de VPS ofrecen instalaciones sencillas de software con un solo clic, como node.js o Express.js. Busque estas instalaciones con 1 clic en el plan que compró para ahorrar un tiempo valioso.

Sección 1: Instale Express.js y prepare un proyecto

Paso 1: actualice el índice de su paquete

Si está utilizando Ubuntu, actualice el índice de su paquete para obtener versiones más recientes de los paquetes que está instalando.

$ sudo apt-get update

Si está utilizando CentOS, actualice y actualice sus planes.

$ sudo yum check-update
$ sudo yum upgrade
$ yum clean all

Paso 2: crea un directorio para tu proyecto

Si aún no ha instalado Node.js, consulte

Primero, cree un directorio para esta aplicación.

$ mkdir serverapp

Luego cambie los directorios al directorio que creó.

$ cd serverapp

Paso 3: ejecutar NPM init

Ejecute la utilidad npm init desde el directorio de la aplicación del servidor. Acepte los valores predeterminados e ingrese «Servidor web simple» cuando se le solicite una descripción del proyecto.

$ npm init

Presione Entrar para aceptar la configuración predeterminada para estas preguntas.

This utility will walk you through creating a package.json file.
It only covers the most common items and tries to guess sensible defaults.

See `npm help json` for definitive documentation on these fields and exactly what they do.

Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (serverapp) 
version: (1.0.0) 
description: 
git repository: 
keywords: 
author: 
license: (ISC) 
About to write to /home/marmot/serverapp/package.json:

{
  "name": "serverapp",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "test": "echo "Error: no test specified" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "description": "Simple web server."
}

Is this ok? (yes) yes

Paso 4: instale Express.js

Instale Express en el directorio serverapp.

$ npm install express --save

Ahora está listo para comenzar su aplicación de servidor web.

Paso 5- Permita el puerto 3000 a través del firewall de su VPS

Si está utilizando Ubuntu para su servidor virtual, permita el puerto 3000 a través del cortafuegos sin complicaciones (UFW).

$ sudo ufw allow 3000

Si está utilizando CentOS para su servidor virtual, permita el puerto 3000 a través de firewalld.

$ sudo firewall-cmd --zone=public --add-port=3000/tcp

Sección 2 – Escriba su guión expreso «Hola mundo»

Paso 1: inicializar Express

Necesita crear dos variables para usar Express. Aquí puede usar var para variables o, de acuerdo con la versión más reciente de JavaScript (ES6), usar const (constante) para inicializar variables que son realmente constantes. Dicho esto, con ES6, es mejor usar const para las variables que no cambiarán.

const express = require('express' 4.16.3);
const app = express()

Luego use get para ejecutar el comando http get. Cree una función de devolución de llamada para responder a las solicitudes realizadas a la URL y el puerto, y responda con «¡Hola, mundo!» Para recibir todas las consultas.

app.get("https://hostadvice.com/", (request, response) {
    response.send('Hello World!));
});

Luego cree la función de escucha que escucha las solicitudes «get» en el puerto 3000.

app.listen(3000, console.log('App Listening to port 3000');

Aquí está su aplicación exprés Hello World completa.

const express = require('express' 4.16.3);
const app = express();

app.get("https://hostadvice.com/", (request, response) {
    response.send('Hello World!));
});

app.listen(3000, console.log('App Listening to port 3000');

Sección 3: Proporcionar contenido estático

En esta sección, aprenderá sobre el poder de Node y Express al ver un documento HTML estándar familiar para aquellos que han creado o editado un sitio web estático para una cuenta de hosting web.

Paso 1: cree el directorio web raíz para este proyecto

Crea un directorio llamado www en su directorio personal.

Paso 2: crea un archivo HTML

Cree un archivo HTML con su editor favorito, abra el archivo en su editor favorito, configure Doctype en html, lo que lo convertirá en un documento HTML. Establezca el idioma HTML en el idioma que desee y luego inserte las secciones típicas del documento HTML.

<!doctype html>

<head>
    <meta charset="UTF-8">

    <title>Hello World!</title>
</head>

<body>
    <h2>Hello World!</h2>
</body>

</html>

Paso 3: establece el camino

Especifique la ruta al contenido que desea publicar. Manténgalo simple con esta aplicación con solo una ruta al contenido estático. En este caso, la ruta es ../www. Eso … sube un nivel de directorio y / www lo lleva al directorio www.

app.use(express.static(path.join(__dirname, '../www'));

Paso 4: crea la función del servidor

El rol del servidor escucha cada puerto que ha asignado a la variable de puerto (en este caso 3000) y responde a las solicitudes http get a la dirección IP o al nombre de dominio de su servidor virtual (si usa su nombre de dominio para su hosting VPS, tiene configurar).

Esta función devuelve un registro de la consola que le indica que la aplicación del servidor se está ejecutando y escuchando en el puerto 3000.

app.listen(3000, function() {
    console.log('Web app listening on port 3000');
});

Aquí está el guión completo.

const express = require('express');
const app = express();

app.get("https://hostadvice.com/", function (request, response) {
        response.send('Hello World');
});

app.listen(3000, function () {
        console.log('Listening on port 3000');
});

Sección 4: agregue algunas rutas a su aplicación

El enrutamiento se refiere a las diferentes rutas a las diferentes respuestas que su aplicación puede tener a las solicitudes http, como por ejemplo: recibir, poner, y Claro.

Paso 1: agregar una «ruta de inicio»

La ruta raíz responde a las solicitudes a la raíz del servidor. Para un sitio web, podría llamar a esto su «ruta de origen».

app.get("https://hostadvice.com/", function (req, res) {
  res.send('Home')
})

Paso 2: agregue una ruta «Acerca de»

Puede agregar una ruta para cada ruta después de la troncal. Agregue una ruta de información que devuelva un simple «Acerca de nosotros» cuando un visitante va a visitante http://YOUR_VPS_IP_ADDRESS:3000/about.

app.get('/about', function (req, res) {
  res.send('About Us')
})

Here's your script with both routes added.

const express = require('express');
const app = express();

app.get("https://hostadvice.com/", function (request, response) {
        response.send('Home');
});

app.get('/about', function (request, response) {
        response.send('About Us');
});

app.listen(3000, function () {
        console.log('Listening on port 3000');
});

Puede hacer mucho más con las rutas, pero esto le da una idea de cómo crearía rutas para un sitio web o una aplicación web alojada en su servidor virtual.

Conclusión

Ha creado un servidor web simple con Node.js y Express.js, ha aprendido a ofrecer contenido HTML estático y ha adquirido una comprensión básica de cómo funciona el enrutamiento.

Puede aprovechar lo que ha aprendido iniciando un sitio web o un proyecto de aplicación web con Node y Express y aprovechando lo que ha creado.