Instalación de Node.js y npm
Para descargar e instalar los binarios de Node.js y npm (el gestor de paquetes de Node.js), sigue los pasos siguientes:
1 - Accede a tu cuenta mediante SSH.
2 - En la línea de comandos, escribe el siguiente comando: cd ~ wget https://nodejs.org/dist/v4.4.1/node-v4.4.1-linux-x64.tar.xz
Este comando descargará la versión 4.4.1 LTS (Long-Term Support) de Node.js. Si deseas descargar una versión más reciente, modifica el número de versión en el comando anterior.
3 - Para extraer los archivos de Node.js, escribe el siguiente comando: tar xvf node-v4.4.1-linux-x64.tar.xz
4 - Para renombrar la carpeta extraída a "nodejs", escribe el siguiente comando: mv node-v4.4.1-linux-x64 nodejs
5 - Para instalar los binarios de Node y npm, escribe los siguientes comandos: mkdir ~/bin cp nodejs/bin/node ~/bin cd ~/bin ln -s ../nodejs/lib/node_modules/npm/bin/npm-cli.js npm
NOTA: El directorio ~/bin está, por defecto, en el PATH, lo que significa que puedes ejecutar Node y npm desde cualquier directorio de tu cuenta.
Una vez ejecutados estos comandos, Node.js y npm quedarán instalados en tu cuenta. Para confirmar que la instalación se ha realizado correctamente, escribe los siguientes comandos: node --version npm --version
INICIO DE UNA APLICACIÓN NODE.JS
Después de instalar Node.js, podrás ejecutar aplicaciones Node.js. El procedimiento necesario dependerá de cómo esté configurada la aplicación.
MÉTODO 1 - USO DE NPM
Muchas aplicaciones de terceros y gratuitas, como Ghost, utilizan npm para iniciarse, como se muestra en el siguiente comando: nohup npm start --production &
NOTA: El símbolo & permite que el comando se ejecute en segundo plano, y el comando nohup garantiza que la aplicación siga ejecutándose incluso si el usuario cierra la sesión del terminal.
Para que este método funcione correctamente, la aplicación debe tener un archivo package.json. Este archivo contiene los metadatos del proyecto que npm leerá para saber cómo iniciar la aplicación, gestionar las dependencias, etc.
Para consultar la documentación oficial de npm sobre el archivo package.json, visita: https://docs.npmjs.com/files/package.json.
MÉTODO 2 - EJECUTAR NODE DIRECTAMENTE
En el caso de aplicaciones más simples, o de cualquier aplicación que no tenga un archivo package.json, puedes ejecutar directamente el binario de Node y especificar el nombre del archivo de la aplicación. Ejemplo: nohup node my_app.js &
En este caso, no podrás beneficiarte de las ventajas que ofrece npm para la gestión de la aplicación.
NOTA: Como se mencionó anteriormente, el carácter & permite ejecutar el comando en segundo plano, y nohup asegura que la aplicación siga en ejecución aunque se cierre la sesión del terminal.
DETENER UNA APLICACIÓN NODE.JS
Para detener una aplicación Node.js en ejecución, escribe el siguiente comando: pkill node
Este comando detendrá inmediatamente todas las aplicaciones Node.js que se estén ejecutando.
INTEGRACIÓN DE UNA APLICACIÓN NODE.JS CON EL SERVIDOR WEB
Dependiendo del tipo de aplicación Node.js que estés usando, es posible que quieras acceder a ella desde un navegador web. Para ello, debes elegir un puerto disponible para tu aplicación Node.js y crear reglas de reescritura que redirijan a los visitantes hacia ella. Ejemplo:
1 - Añade las siguientes líneas al archivo .htaccess ubicado en el directorio /home/username/public_html (sustituye username por tu nombre de usuario):
RewriteEngine On RewriteRule ^$ http://127.0.0.1:XXXXX/ [P,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ http://127.0.0.1:XXXXX/$1 [P,L]
2 - Sustituye XXXXX por el número de puerto asignado a tu aplicación Node.js.
NOTA: Debes usar un puerto libre entre los números 49152 y 65535 (ambos incluidos).
3 - Guarda los cambios en el archivo .htaccess. A partir de este momento, los visitantes de tu sitio serán redirigidos a la aplicación Node.js correspondiente al puerto especificado.
NOTA: Si la aplicación no arranca, puede deberse a que el puerto elegido ya está en uso. Consulta el registro (log) de la aplicación en busca de errores como EADDRINUSE. Si es el caso, cambia el número de puerto en el archivo .htaccess e inténtalo de nuevo.
MÁS INFORMACIÓN
Para más información sobre Node.js, visita: http://nodejs.org.