Node.js 使用教程

目录

  • 基础知识
  • 登录
  • 使用密钥登录
  • 双重身份验证
  • Binexec
  • 端口保留
  • 实用命令
  • 环境设置
  • 修改密码
  • Crontab
  • IP 地址
  • 指纹
  • 教程
  • WordPress
  • Redis
  • Memcached
  • Imapsync
  • WP-CLI
  • Tomcat
  • Devil
  • DevilWEB
  • 网站
    • .htaccess
    • PHP
    • Node.js
    • 初始配置
    • Node.js 版本
    • Node.js 项目
    • Node.js 模块
    • 准备 Node.js 应用程序
    • 已有的 Node.js 项目
    • 重启应用程序
    • Phusion Passenger 进程限制
    • 静态文件
    • 变量
    • 日志
    • 应用程序生命周期
    • 外部参考

Node.js 教程

初始配置

要运行基于 Node.js 的应用程序,请确保进行了正确的预配置。在继续以下步骤之前,请确保:

  1. 域名已在我们的 DNS 系统中正确添加和配置。
  2. 已添加网站,并选择 Node.js 类型。
  3. 执行以下命令:
   mkdir ~/.npm-global
   npm config set prefix '~/.npm-global'
   echo 'export PATH=~/.npm-global/bin:~/bin:$PATH' >> $HOME/.bash_profile && source $HOME/.bash_profile

Node.js 版本

Serv00.com 服务器上提供以下 Node.js 版本:

  • v12.22.1 - node12 和 yarn12 二进制文件
  • v14.21.1 - node14 和 npm14 二进制文件
  • v16.20.0(默认) - node 和 npm16 二进制文件
  • v18.16.0 - node18 和 npm18 二进制文件
  • v20.4.0 - node20 和 npm20 二进制文件
  • v22.2.0 - node22 和 npm22 二进制文件

更改 Node.js 版本的命令示例如下(将版本设置为 v18):

mkdir -p ~/bin && ln -fs /usr/local/bin/node18 ~/bin/node && ln -fs /usr/local/bin/npm18 ~/bin/npm && source $HOME/.bash_profile

要更改为 v16,运行以下命令:

mkdir -p ~/bin && ln -fs /usr/local/bin/node16 ~/bin/node && ln -fs /usr/local/bin/npm16 ~/bin/npm && source $HOME/.bash_profile

Node.js 项目

Node.js 项目的主目录(即 app.js 文件所在目录)必须是 /usr/home/LOGIN/domains/DOMAIN/public_nodejs。并删除 index.html 文件:

rm /usr/home/LOGIN/domains/DOMAIN/public_nodejs/public/index.html

Node.js 模块

安装所选 Node.js 模块的命令是 npm install -g MODULE_NAME。建议在主目录中安装二进制模块。启用 Binexec 并重新登录以使用它们。

为了一些 npm 模块正确编译,需要设置以下变量:

export C=clang
export CXX=clang++

如果出错,请检查:

export CC=gcc
export CXX=g++

准备 Node.js 应用程序

在目录 /usr/home/LOGIN/domains/DOMAIN/public_nodejs 中创建新项目,最简单的方法是创建一个 app.js 文件:

var http = require('http');
var server = http.createServer(function(req, res) {
    res.writeHead(200, { 'Content-Type': 'text/plain' });
    res.end("hello world!\n");
});
server.listen(3000);

Phusion Passenger 自动创建与应用程序通信的套接字,无需在 nodejs 类型中运行应用程序时保留端口。

已有的 Node.js 项目

已有的 Node.js 项目应放置在 /usr/home/LOGIN/domains/DOMAIN/public_nodejs 目录下。如果项目名称不是 public_nodejs,需要更改其名称。还需修改 app.js 文件以执行应用程序,并使用 npm install 安装缺失的模块。

重启应用程序

可以通过我们的服务管理面板在 WWW 选项卡中或使用 Devil 账户管理系统命令重启 Node.js 应用程序:

devil www restart DOMAIN

Phusion Passenger 进程限制

可以为 nodejs 页面设置进程数量。命令语法如下:

devil www options DOMAIN processes <Quantity>

其中:

  • DOMAIN - 代表 nodejs 类型的 WWW 域
  • QUANTITY - 进程数量,范围为系统进程的 1% 到 80%

该选项也可在 DevilWEB 面板中设置:

WWW 网站 ➡ 详情 ➡ 进程数量 ➡ 输入新值并保存更改

静态文件

所有在 /usr/home/LOGIN/domains/DOMAIN/public_nodejs/public 下的文件都作为静态文件处理。将所有图片、脚本、样式等文件放在此目录中。例如,文件 /usr/home/LOGIN/domains/DOMAIN/public_nodejs/public/robots.txt 将在 http(s)://DOMAIN/robots.txt 处可用。

变量

通过在 ~/.bash_profile 文件中添加变量,可以从 SSH 设置具有 Passenger 服务器应用程序可见性的变量(例如 export TESTENV=1)。

注意:变量不会从 ~/.bashrc~/.shrc 文件中使用。

日志

注意:不要删除日志目录,否则可能导致 Node.js、Ruby 和 Python 页面出现问题。

错误日志保存到 /usr/home/LOGIN/domains/DOMAIN/logs/ 目录下的 error.log 文件中。

应用程序生命周期

如果网站在 24 小时内没有请求,应用程序将自动关闭,并在下次访问时自动启动。网站配置更改时,应用程序也会自动关闭,并在下一次访问时启动。

外部参考

  • Node.js
  • Phusion Passenger