任何人都想知道如何在Godaddy上安装节点服务器的站点或参考。
答案 0 :(得分:9)
是的,这是可能的。不知怎的,我从来没有见过任何人真正正确回答这个问题。这适用于最基本的共享主机方案。我已经成功地设置了几种不同的方式。我认为可能是你想要的:
<强> 1。 cgi-node http://www.cgi-node.org/home
基本上这取代了灯堆上的PHP。您可以像运行PHP一样通过节点运行javascript。它具有节点js的所有相同功能,但仅适用于模板渲染。
<html>
<body>
<?
var helloWorld = 'Hello World!';
write(helloWorld + '<br/>');
?>
<?= helloWorld ?>
<br/>
<b>I can count to 10: </b>
<?
for (var index= 0; index <= 10; index++) write(index + ' ');
?>
<br/>
<b>Or even this: </b>
<?
for (var index= 0; index <= 10; index++) {
?>
<?= index ?>
<? } ?>
</body>
</html>
或强>
<强> 2。独立服务器(这适用于NameCheap托管和GoDaddy共享托管)
在您的共享主机帐户中,您需要SSH才能执行此操作。因此,您可能需要从其客户支持升级或请求SSH访问。下载最新的NodeJS https://nodejs.org/en/download/。共享主机可能在linux 64位。您可以通过运行:
在linux或unix上进行检查uname -a
下载Linux二进制文件,然后将/ home / username / bin /中的bin / node(以及bin / npm文件,如果你想在服务器上使用npm文件)文件放入(如果没有,则创建bin文件夹) #39; t存在)在服务器上。将权限755放在节点二进制文件上。所以你应该在这里有一个新文件:
/home/username/bin/node
在/ home / username / public_html中打开.htaccess文件并添加以下行:
RewriteEngine on
RewriteRule (.*) http://localhost:3000/$1 [P,L]
在/ home / username / public_html中创建一个文件,然后将其命名为app.js.在该文件中添加以下行:
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('NodeJS server running on Shared Hosting\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
SSH进入服务器运行以下命令:
cd /home/username/public_html
which node # this should return ~/bin/node
node app.js & # This will create a background process with the server running
如果你可以正确设置,从长远来看这将节省大量资金,而不是使用AWS或Heroku等。
答案 1 :(得分:4)
是的,即使在最便宜的共享托管层上也可以实现。 @nebulr指示正确。这是针对像我这样的菜鸟的稍作更新和扩展的版本。
(1)在共享主机帐户上启用SSH:
•登录到GoDaddy托管并打开SSH Access(在仪表板上,它位于右下角的“设置”中)。记下cPanel登录用户名,如果忘记了密码,请更改密码。 请注意,您可能还需要在CPanel中的“安全性”和“ SSH访问”下创建密钥。
(2)本身安装nodejs程序:
•从https://nodejs.org/en/download/下载Node.js二进制文件具体来说,您需要Linux x64版本(直接链接https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz)
•在您的计算机上解压缩此.tar文件,并在内部查找bin
文件夹(在Mac上,您可能需要The Unarchiver之类的程序来解压缩该文件)。 bin
文件夹中将有一个名为“ node”的文件,大约40Mb。这个“节点”文件是我们将在此程序包中唯一使用的文件。
•使用CPanel文件管理器或FTP程序,在/home/yourUserName/
中的服务器上创建一个名为“ bin”的文件夹,并为其赋予755权限。请注意,这不是在public_html
内。
•将“节点”文件上传到/home/yourusername/bin/
(3)创建一个简单的nodejs脚本:
•打开文本编辑器(如Sublime)并创建一个名为“ app.js”(或其他名称)的新文件:
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('NodeJS server running on Shared Hosting\n');
});
server.listen(port, hostname, () => {
console.log('Server running at http://${hostname}:${port}/');
});
请注意,这只是https://nodejs.org/en/docs/guides/getting-started-guide/
中的基本服务器应用 •打开CPanel文件管理器或FTP程序,然后将app.js文件上传到/home/yourusername/public_html/
(4)修改.htaccess文件:
•使用FTP程序将以下行添加到.htaccess文件中:
RewriteEngine on
RewriteRule (.*) http://localhost:3000/$1 [P,L]
请注意,.htaccess文件默认情况下可能为空白。另外请注意,如果您勇敢或1337,可以在SSH中使用nano,vim或emacs编辑.htaccess文件。
(5)启动节点服务器:
•,通过打开Putty(Windows)或Terminal(Mac)并在命令行中输入以下命令,以SSH方式登录Godaddy服务器:ssh username@website.com
(其中用户名是您的托管帐户的cPanel登录名)
服务器应以username@website.com's password:
响应,这是您输入cPanel登录密码的位置。
注意:如果这是您第一次SSH连接到服务器,则会收到一条消息:The authenticity of host 'X.X.X.X' can't be established. RSA key fingerprint is XXXX. Are you sure you want to continue connecting (yes/no)?
键入yes,然后继续。
•通过输入/home/yourUserName/public_html/
导航到cd public_html
。通过键入以下内容来启动节点服务器脚本:node app.js &
几秒钟后,您应该会看到以下消息:Server running at http://127.0.0.1:3000/
(6)签出:
•打开网络浏览器,然后输入网站的URL。您应该得到一个白页,上面有文本NodeJS server running on Shared Hosting
或您在上面app.js的第9行中输入的任何消息。 请注意,您不能使用共享主机帐户上的IP地址,而需要使用域名。
答案 2 :(得分:2)
另一种方法是通过NVM。首先使用SSH连接到服务器。然后有一个curl命令,允许您通过bash脚本安装NVM:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
对我来说,还需要执行两个附加步骤:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
来源:
答案 3 :(得分:1)
您有两种选择来托管节点应用。 - 从godaddy或digitalocean等购买自己的VPS服务器。 - Godaddy本身提供运行其节点实例的选项。请参阅https://in.godaddy.com/pro/one-click-installation/node-js
答案 4 :(得分:1)
正如@nebuir所说,可以使用GoDaddy的共享主机选项运行你的node.js开发的应用程序,因为我刚刚做到了。 .htaccess部分是实现这项工作的关键。我需要添加的唯一其他行是
RewriteRule ^index.html.var$ http://www.yoursite.com:3000/$1 [L,P,QSA]
前
RewriteRule (.*) http://www.yoursite.com:3000/$1 [P,L]
答案 5 :(得分:1)
我通过以下方式在多个域的Godaddy共享托管服务器上安装了节点:
SSH到Godaddy服务器
在主文件夹中安装nvm
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
nvm install 10.14.0
(或首选节点版本)
注意:如果在执行$nvm --version
时未找到nvm命令,请关闭并重新启动SSH终端
在要运行节点应用程序的站点的文件夹中,添加.httaccess
文件
~/public_html/site folder/.htaccess
RewriteEngine on
RewriteRule (.*) http://localhost:3000/$1 [P,L]
注意:.htaccess
可用于定位各个文件夹,并且更改无需更改服务器即可立即生效。
按照@nebulr指示在站点文件夹中运行app.js或节点服务器
$node app.js &