cPanel面板如何安装Node.js程序(旧)?
目前老薛主机所有虚拟主机、弹性主机套餐都将支持 Node.js(需要开通 SSH 权限,具体可以咨询老薛主机的在线客服)。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,简单的说就是运行在服务端的 JavaScript,比如 Ghost 博客等程序就是基于 Node.js 构建的。今天这个教程就是教大家如何快速、轻松的在 cPanel 虚拟主机上安装 Node.js 环境,如果你仍然需要帮助,可以随时通过在线客服或工单的方式联系我们。
安装 Node.js 和 npm
这里有几个简单的步骤来安装 Node.js 和 npm(Node.js 的包管理器),执行以下步骤即可安装。
使用 SSH 登录你的帐户(如果你的帐户没有开通 SSH 权限,请联系我们的在线客服)。
登录 SSH 之后,执行以下命令:
cd ~
wget https://nodejs.org/dist/v7.9.0/node-v7.9.0-linux-x64.tar.gz
上面的命令下载的是 v7.9.0 版本,如果你需要安装其他版本,可以在这里找到下载地址:https://nodejs.org/dist/,请下载 Linux x64 版本,tar.gz 格式的压缩包。
输入以下命令解压 Node.js 文件:
tar xzf node-v7.9.0-linux-x64.tar.gz
为了节省空间,可以将下载压缩包删除了:
rm node-v7.9.0-linux-x64.tar.gz -f
将解压出来的文件夹重命名为 nodejs:
mv node-v7.9.0-linux-x64 nodejs
现在安装 node 和 npm 二进制文件:
mkdir ~/bin
cp nodejs/bin/node ~/bin
cd ~/bin
ln -s ../nodejs/lib/node_modules/npm/bin/npm-cli.js npm
cd ~
npm install -g npm
到这里,Node.js 和 npm 都已经成功的在你的账户下安装,可以输入以下命令进行验证:
node --version
npm --version
命令已经安装在你账户下的 ~/bin 目录中,默认情况下,你可以在帐户中的任何目录运行 node 和 npm。
如何启动 Node.js 程序?
现在已经安装好了 Node.js,就可以运行 Node.js 程序了。但是,具体的步骤取决于程序的配置。
方法1:使用 npm
有很多第三方程序以及生产环境下的程序(比如 Ghost)可以使用 npm 程序启动,输入以下命令:
nohup npm start --production &
使用 nohup 后台命令可以确保即使你退出当前终端会话,程序也将继续运行。
使用这个方法启动,应用程序必须有一个有效的 package.json 文件,package.json 文件中包含 npm 程序读取的项目元数据,以确定如何启动应用程序,管理其依赖关系等等。
方法2:直接运行 node
对于一些简单的程序,或者任何没有 package.json 文件的程序,你可以直接运行对应的 node 可执行文件,例如:
nohup node app.js &
但是,你将无法使用 npm 来管理这个程序。
同样的,使用 nohup 后台命令可以确保即使你退出当前终端会话,程序也将继续运行。
如何停止 Node.js 程序?
只需要执行以下命令,即可停止 Node.js 程序:
pkill node
以上命令执行后将立即停止所有正在运行的 Node.js 程序。
将 Node.js 程序集成到 Web 服务器
既然已经在虚拟主机上成功运行了 Node.js 程序,根据你正在运行的 Node.js 程序的类型,你可能希望能够使用 Web 浏览器访问它,为此,你需要为 Node.js 程序选择一个未使用的端口进行监听,然后定义 Rewrite 规则,将访客重定向到 Node.js 程序。以下步骤将演示如何执行此操作:
在虚拟主机的 public_html 目录下新建一个 .htaccess 文件(如果是附加域或者子域,请把.htaccess文件放到对应的网站根目录),将以下代码添加到这个文件中(如果你使用 cPanel 面板的文件管理器,需要点击右上角的设置,勾选显示隐藏文件才能看到点开头的文件):
DirectoryIndex disabled
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]
将上面两行 RewriteRule 后面的 XXXXX 替换为你的 Node.js 程序监听的端口。在虚拟主机上运行 Node.js,你必须选择一个未使用的端口,并且端口号必须在 49152 ~ 65535 之间(部分服务器开启了防火墙,无法使用自定义的端口,具体需要咨询我们的客服)。
正常情况下,保存好 .htaccess 文件之后,你的网站的访客将被重定向到在指定端口上侦听的 Node.js 应用程序。
如果你的程序无法启动,可能是你选择的端口已经被使用,可以检查应用程序日志中的错误代码,比如 EADDRINUSE,表示端口正在使用。如果是这样,请选择其他端口号,并更新应用程序的配置和 .htaccess 文件,然后重试。
您可能感兴趣的文章
- 从自身经历说说老薛主机怎么样
- 老薛主机上传网站多久才能正常访问?
- 老薛主机上传文件超过upload_max_filesize值怎么办?
- 老薛主机如何请求取消虚拟主机并申请退款?
- 一个虚拟主机有没有办法实现多个域名建立多个网站?
- 用香港主机在里面放十几个网站有什么问题?
- 老薛主机折扣码boke112可以优惠多少钱?
- 老薛vps主机有哪些机型和配置?价格如何?
站长建议:①个人建站首选 阿里云服务器 ②购买免备案老薛主机建议使用终身7折优惠码 boke112 ③购买5118会员建议使用优惠码 iboke112
近期更新的文章
- 2019年12月20日有什么低配的云虚拟主机推荐?推荐老薛主机或云服务器
- 2019年12月19日新手站长应该如何写好博客文章内容?附几点建议
- 2019年12月13日免备案老薛主机能够建立无限个网站的虚拟主机哪个最便宜?
- 2019年12月12日免备案老薛主机能够建立无限个网站有哪些虚拟主机?
- 2019年12月05日个人想做淘宝客网站有什么虚拟主机推荐?建议老薛淘客主机
- 2019年12月05日老薛主机根目录public_html权限是?附一键修复文件权限教程
- 2019年12月03日老薛主机基础教程:购买虚拟主机流程及查看IP及别名解析地址
- 2019年12月02日老薛主机基础教程:域名注册及解析绑定到虚拟主机
- 2019年11月28日个人想做影视网站有什么虚拟主机推荐?建议老薛影视主机
- 2019年11月27日我的老薛主机cPanel面板中为什么找不到Imunify360?
- 2019年11月26日老薛主机建立的博客网站某些页面显示503错误如何处理?
- 2019年11月25日一个虚拟主机有没有办法实现多个域名建立多个网站?
- 2019年11月23日想要建立多个网站使用什么虚拟主机比较好?操作简单吗?
- 2019年11月22日老薛主机怎么解绑顶级域名?修改主域名或删除附加域?
- 2019年11月21日老薛主机如何通过Cpanel面板附加域绑定新域名或删除域名?
- 2019年11月20日有人在老薛主机买过虚拟主机吗?怎么样?
- 2019年11月19日老薛主机有人知道吗?怎么样?需要备案吗?
- 2019年11月18日老薛主机如何排除某域名不生成SSL证书?事后如何恢复?