Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在我自己的服务器上安装TextBelt_Node.js_Git_Redis_Npm - Fatal编程技术网

Node.js 在我自己的服务器上安装TextBelt

Node.js 在我自己的服务器上安装TextBelt,node.js,git,redis,npm,Node.js,Git,Redis,Npm,我想在我自己的AmazonEC2Web服务器上安装一个开源的CurlSMS API,并使用它发送文本消息。然而,我不确定如何正确地进行这项工作 我使用git将所有文件克隆到名为/var/www/textbelt的目录中。然后,我使用npm安装了package.json文件中列出的所有依赖项,并按照答案中提供的说明创建了符号链接。我看到在“scripts”文件夹中有一个bash脚本start.sh,所以我将其放入cd并运行sh start.sh。然后我得到了以下信息: nohup: appendi

我想在我自己的AmazonEC2Web服务器上安装一个开源的CurlSMS API,并使用它发送文本消息。然而,我不确定如何正确地进行这项工作

我使用
git
将所有文件克隆到名为
/var/www/textbelt
的目录中。然后,我使用
npm
安装了
package.json
文件中列出的所有依赖项,并按照答案中提供的说明创建了符号链接。我看到在“scripts”文件夹中有一个bash脚本
start.sh
,所以我将其放入cd并运行
sh start.sh
。然后我得到了以下信息:

nohup: appending output to ‘/home/ec2-user/nohup.out’
很自然,我查看了日志,看到了:

^[[0;31mError: Cannot find module '/var/www/textbelt/scripts/app.js'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3
由于某些原因,
start.sh
错误地引用了
app.js
路径。我通过将
app.js
更改为
。/app.js
来修复此问题,然后重试。这是我的完整输出:

^[[0;42m    hotnode ^[[m ^[[0;32mnode process restarted^[[m
^[[0;31mconnect.multipart() will be removed in connect 3.0
^[[m
^[[0;31mvisit https://github.com/senchalabs/connect/wiki/Connect-3.0 for alternatives
^[[m
^[[0;31mconnect.limit() will be removed in connect 3.0
^[[m
Listening on 9090
^[[0;31m
^[[m
^[[0;31mevents.js:72
^[[m
^[[0;31m        throw er; // Unhandled 'error' event
^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m ^[[m
^[[0;31m^^[[m
^[[0;31m
^[[m
^[[0;31mError: Redis connection to localhost:6379 failed - connect ECONNREFUSED
    at RedisClient.on_error (/var/www/textbelt/node_modules/redis-url/node_modules/redis/index.js:196:24)
    at Socket.<anonymous> (/var/www/textbelt/node_modules/redis-url/node_modules/redis/index.js:106:14)
    at Socket.emit (events.js:95:17)
    at net.js:440:14
    at process._tickCallback (node.js:419:13)
^[[m
这表明redis没有正确安装。然而,在查看了我的
node\u modules
文件夹后,我发现里面确实有一个
redis url
文件夹,这(我假设)意味着依赖项安装正确?我必须在服务器范围内安装吗

我被困在这里了

总的来说,我不确定我是否朝着正确的方向前进。安装和启动TextBelt API以使其正常运行的正确方法是什么

更新:好的,所以我发现我还必须单独安装
redis
服务器。重新启动一切,日志现在看起来很好:

^[[0;42m    hotnode ^[[m ^[[0;32mnode process restarted^[[m
^[[0;31mconnect.multipart() will be removed in connect 3.0
^[[m
^[[0;31mvisit https://github.com/senchalabs/connect/wiki/Connect-3.0 for alternatives
^[[m
^[[0;31mconnect.limit() will be removed in connect 3.0
^[[m
Listening on 9090
但是,我认为需要进一步的配置才能真正发送文本消息。例如,我尝试使用cURL使用我的服务器发送消息,就像我想:


但这不起作用(我得到的只是404NotFound页面的HTML)。需要注意的是,我目前在
/var/www/
中有
textbelt
文件夹,但web文档根目录在
/var/www/html/
中。我不认为我必须将文件夹移动到文档根目录下,对吗?我需要如何继续?

结果证明答案比我想象的要简单得多。我的安装没有问题,但我的防火墙中没有打开9090端口。打开此端口立即解决了问题。

您必须安装服务器。您的模块文件夹中可能有一些库/驱动程序可以与Redisalem交谈,谢谢!事实上,我只是自己想出来的。现在更新我的帖子…塞勒姆,如果你能看看我更新的帖子,我将不胜感激。那
http://my.ip:9090/text
?不,很遗憾,请求刚好超时。
^[[0;42m    hotnode ^[[m ^[[0;32mnode process restarted^[[m
^[[0;31mconnect.multipart() will be removed in connect 3.0
^[[m
^[[0;31mvisit https://github.com/senchalabs/connect/wiki/Connect-3.0 for alternatives
^[[m
^[[0;31mconnect.limit() will be removed in connect 3.0
^[[m
Listening on 9090
$ curl http://my.ip/text \ 
-d number=5551234567 \ 
-d "message=I sent this message for free with textbelt.com"