Tag: heroku

我不必为我的socket.io应用程序指定一个用于heroku的端口?

我已经成功地做了一个testing聊天的应用程序,我已经得到了一个运行在heroku上的socket.io的节点js服务器。 在本地计算机上,我必须将客户端上的localhost端口号指定给服务器设置的端口。 但是,当我在heroku上运行我的服务器代码。 删除服务器 我使用process.env.PORTvariables,因为heroku设置: var port = process.env.PORT || 3000; http.listen(port, function(){ console.log('listening on *:' + port); }); 当然,我发现应用程序正在运行的端口号放在url中 var socket = io('https://xxxx.herokuapp.com:1111'); 但是这给了我一个“net :: ERR_CONNECTION_REFUSED”。 我通过删除URL后的端口nubmer(在这个例子中:1111)得到它的工作。 我想知道为什么这是可行的,因为大多数的教程和文章在网上有指定端口,为什么我的本地计算机需要该端口也工作。

SSL:Heroku,Nodejs,Socketio,ReactJS

我部署到Heroku的应用程序戳 ,一切都很好,应该是实时的,但如果你看到控制台不工作,我得到这个错误 Mixed Content: The page at 'https://poke-chat.herokuapp.com/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1441366303148-19'. This request has been blocked; the content must be served over HTTPS 我不知道为什么:c 这是我的index.js import express from 'express'; import http from 'http'; import engine from 'socket.io'; import dbapi from './db-api'; const port = process.env.PORT || 3000; […]

在ExpressJS下检测HTTPS只能使用四种方法中的一种

我最近添加了一个SSL证书到我的网站。 在添加HTTPS支持后,我想将人员redirect到安全连接。 我用googlesearch了解如何检测HTTPS并在Stack上find许多不同的方法。 它接缝他们为别人工作,但他们不为我工作。 4种方式检查一个安全的连接,只有一个工作。 什么不适合我: req.secure :即使我手动把https://总是返回false req.connection.encrypted :总是返回undefined,即使我手动把https:// req.protocol :总是返回http,即使我手动把https:// 什么工作: req.headers ['x-forwarded-proto']是实际返回实际的唯一途径。 知道这个我redirect到一个安全的连接,以下列方式: // Check if the connection is secure, if not, reddiret to a secure one. function requireHTTPS(req, res, next) { if(process.env.NODE_ENV == 'production') { if (req.headers['x-forwarded-proto'] !== 'https') { return res.redirect('https://' + req.get('host') + req.url); } } next(); } app.use(requireHTTPS); […]

用Heroku nodejs服务器错误EADDRNOTAVAIL

我已经在OpenShift上开发了一个nodejs服务器,现在我正在试图在Heroku上为一个新项目制作相同types的服务器。 这是我的服务器的最小代码: var http = require('http'); var port = process.env.PORT || 8080; var address = process.env.IP || '127.0.0.1'; console.log(address); console.log(port); var server = http.createServer(function(req, res) { res.writeHead(200, { 'Content-Type': 'text/html', 'Access-Control-Allow-Origin': '*' }); res.write(JSON.stringify({ valid: true })); res.end(); }); server.listen(port, address); 与我的OpenShift服务器的差异是: 通过process.env.PORT和process.env.IPreplacevariablesprocess.env.OPENSHIFT_NODEJS_PORT,process.env.OPENSHIFT_NODEJS_IP。 我用这个命令行设置IPvariables:heroku config:set IP = MYSERVERADDRESS.com 我无法启动我的服务器,它总是崩溃,我不明白为什么,我的服务器的日志是: MYSERVERADDRESS.com 41184 events.js:154 throw er; // […]

部署Angular 2应用程序到Heroku

在过去,我总是将我的Angular 1和Rails应用程序捆绑在一起,通常使用heroku,这对我来说非常有用。 现在我已经结束了Angular 2,我想分离出我的Angular和Rails代码。 我已经通过Angular-Cli创build了一个非常基础的Angular 2应用程序,但我还没有弄清楚如何将它部署到Heroku。 我没有使用expressjs或类似的东西。 任何人都知道了吗?

NodeJS + MySQL从本地主机连接,但不是heroku

我有一个简单的networking应用程序需要连接到我的数据库。 我创build了一个名为public的用户,只能从数据库中select。 从本地主机一切正常工作。 我在Heroku上部署了应用程序,它给了我以下错误: 2016-10-18T00:17:59.282323 + 00:00 app [web.1]:无法连接:(错误:连接ETIMEDOUT 2016-10-18T00:17:59.282562 + 00:00 app [web.1]:出错了…错误:连接ETIMEDOUT app.get("/", function(request, response){ response.render("index"); }); // request for quotes is received app.get("/get", function(req, res){ // open a connection to the database var connection = mysql.createConnection({ connectionLimit: 100, host: "my-test-database.c3j6vph7cyv2.us-west-2.rds.amazonaws.com", user: "public", password:"helloworld", database:"quotes" }); // connect to the database connection.connect(function(error){ if(error){ […]

Heroku自定义域名不工作

将Heroku应用程序与自定义域连接的正确方法是什么? 这就是我过去的做法: 将Godaddy的DNS指向heroku提供的目标(例如https://peaceful-escarpment-22825.herokuapp.com ) 打开域上的域名转发 在设置中将域添加到Heroku 出于某种原因,现在我从Heroku提供的目标是这样的:mycustomdomain.com.herokudns.com。 当我把这个DNS添加到GoDaddy时,我得到了一个这里没有任何东西。 页。 我哪里错了? 谢谢!

如何将MongoDB数据库从cloud9导出到mlab?

所以我使用Node.js,mongoDB,在云9上创build了一个Web应用程序。 我按照说明在云9中设置了MongoDB。 当我完成应用程序,我部署到Heroku,并创build了一个新的数据库mlab(蒙古)。 这工作正常。 但是,我在cloud9上托pipe的数据库中插入了大量虚拟数据。 我想将这个虚拟数据从cloud9中的db复制到mlab中的db中。 我怎么做? 我做了一些研究。 根据mongodb文档,我应该使用db.copyDatabase(): db.copydatabase(fromdb,todb,fromhost,用户名,密码,机构) 它说我应该在目标实例中运行这个命令,即接收复制数据的实例。 我假设这意味着我应该连接到mlab上托pipe的数据库:mongo dsblahblah.mlab.com:59220/blahblah -u -p 然后运行db.copyDatabase命令,更正? 但是,我应该使用fromdb参数? 这是在云9托pipe的数据库。 但是这个数据库的url是什么? 帮帮我。 和ELI5。

Heroku Build Rejected – NodeJS

我努力成功地为我的NodeJS应用程序在Heroku上执行构build。 该应用程序在本地工作,当我把它推到Heroku一旦它的伟大。 但随后的推动被Heroku拒绝。 这是我得到的: Counting objects: 15, done. Delta compression using up to 8 threads. Compressing objects: 100% (12/12), done. Writing objects: 100% (15/15), 1.34 KiB | 0 bytes/s, done. Total 15 (delta 7), reused 0 (delta 0) remote: Compressing source files… done. remote: Building source: remote: remote: —–> Node.js app detected remote: remote: —–> […]

用于Ping Heroku应用程序的New Relic的替代方法

我在Heroku上免费运行Node.js应用程序。 人们使用New Relic不断地ping他们的app,防止dyno空转,但New Relic不支持Node。 有谁知道支持节点的替代插件? 我不在乎function,我只需要每1小时就能ping一次。