2011-10-07 81 views
3

我在Heroku上运行Node.js/Express/MongoHQ应用程序。它在当地完美运作。当我推送到Heroku时,根页面“/”会正确加载,并且可以成功访问MongoHQ数据库。每一条其他路由都会给我一个内部服务器错误,并且Heroku日志中没有可识别的错误。虽然如果我去/页/我确实得到我的应用程序的500页来正确呈现(随机...)Heroku/Node.js - 导致内部服务器错误的某种路由错误

有什么你可以想到的,这可能会出错在这里?我认为这是一个数据库的东西,但现在它看起来像一个路由的事情。我很高兴提供任何代码......我认为我会粘贴一些日志,尽管对我来说这对我来说是超级无用的。任何想法MAJORYL赞赏。

谢谢。

日志(用于基本上比其他任何路线“/”)

2011-10-07T17:27:03+00:00 app[web.1]: 10.94.69.43 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /assets_js/lib/jquery.1.4.2.min.js HTTP/1.1" 304 - "<MYSITE>/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_js/lib/jquery.timeago.js dyno=web.1 queue=0 wait=0ms service=5ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_js/lib/jquery.1.4.2.min.js dyno=web.1 queue=0 wait=0ms service=7ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_js/lib/iscroll.js dyno=web.1 queue=0 wait=0ms service=3ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_css/viewer.css dyno=web.1 queue=0 wait=0ms service=3ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_js/utils.js dyno=web.1 queue=0 wait=0ms service=2ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 app[web.1]: 10.117.9.191 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /assets_js/lib/iscroll.js HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 app[web.1]: 10.117.11.66 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /assets_css/viewer.css HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_js/mediacreate.js dyno=web.1 queue=0 wait=0ms service=2ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 app[web.1]: 10.94.74.117 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /assets_js/mediacreate.js HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/view_dashboard/activecard.js dyno=web.1 queue=0 wait=0ms service=3ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 app[web.1]: 10.84.93.33 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /view_dashboard/activecard.js HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/view_dashboard/drawon.js dyno=web.1 queue=0 wait=0ms service=3ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/assets_css/dashboard.css dyno=web.1 queue=0 wait=0ms service=3ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 app[web.1]: 10.64.155.131 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /view_dashboard/dashboard.js HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 heroku[router]: GET <MYSITE>/view_presentation/cards/cards.js dyno=web.1 queue=0 wait=0ms service=8ms status=304 bytes=0 
2011-10-07T17:27:03+00:00 app[web.1]: 10.84.95.29 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /view_presentation/cards/cards.js HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:03+00:00 app[web.1]: 10.64.155.131 - - [Fri, 07 Oct 2011 17:27:03 GMT] "GET /view_presentation/cards/cards.css HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:05+00:00 app[web.1]: 10.64.147.7 - - [Fri, 07 Oct 2011 17:27:05 GMT] "GET /assets_img/graph.gif HTTP/1.1" 304 - "<MYSITE>" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:05+00:00 heroku[router]: <MYSITE>/assets_img/graph.gif dyno=web.1 queue=0 wait=0ms service=6ms status=304 bytes=0 
2011-10-07T17:27:05+00:00 app[web.1]: 10.84.95.29 - - [Fri, 07 Oct 2011 17:27:05 GMT] "GET /favicon.ico HTTP/1.1" 500 1682 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1" 
2011-10-07T17:27:05+00:00 heroku[router]: GET <MYSITE>/favicon.ico dyno=web.1 queue=0 wait=0ms service=5ms status=500 bytes=1682 
+0

它看起来像你的静态文件配置错误。你可以发布你的快速配置的一部分?应该看起来像'app.use(express ['static'](__ dirname +'/ public',{maxAge:86400000}));'如果您使用样板模板。 –

+0

好酷,我希望你在这里的东西。这是我目前的静态目录'app.use(express.static(__ dirname +'/ public'));'然后我有5个文件夹在“assets_css,assets_js等......”。我不完全确信可能的唯一原因是,当我转到'/'时,它确实会将所有这些文件正确地拉入。 – tuddy

+0

这个问题似乎是在你的路由定义或server.js定义(如何处理favicon.ico)。 你能发布那些吗? – theprogrammer

回答

1

几个可能性,我能想到的:

  • 你的node.js的版本可能不完全一样的Heroku的。运行node --version找到你的设备,然后在package.json中添加如下内容,以使heroku使用相同的版本:"engines": { "node": "0.6.14"}
  • 你在package.json中有一些不同于某些依赖项的版本。运行npm ls以查看您在本地的内容,并在推送时查看它下载的版本,并注意heroku的日志。
  • 你有一些本地没有签入的重要文件:git status如果你有他们,请检查你的.gitignore.slugignore文件。
  • 这可能是一个操作系统的事情,我不确定哪个口味,但我很确定heroku运行Linux。 require('os').type()require('os').release()可以在这里给你一些信息。
相关问题