Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.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
Ruby on rails Heroku问题:您正在查找的页面没有';不存在_Ruby On Rails - Fatal编程技术网

Ruby on rails Heroku问题:您正在查找的页面没有';不存在

Ruby on rails Heroku问题:您正在查找的页面没有';不存在,ruby-on-rails,Ruby On Rails,我一直遵循这本书,直到第5章结束,它在我的linux工作站上运行正常 当我推送到Heroku时,所有数据都被正确推送到,但当我试图打开Heroku时(http://vivid-sky-685.heroku.com) 我收到一条404信息 您要查找的页面不存在。 您可能键入了错误的地址,或者页面可能已移动 下面是我申请的Gemfile source 'http://rubygems.org' gem 'rails', '3.0.5' gem 'sqlite3' group :developmen

我一直遵循这本书,直到第5章结束,它在我的linux工作站上运行正常 当我推送到Heroku时,所有数据都被正确推送到,但当我试图打开Heroku时(http://vivid-sky-685.heroku.com)

我收到一条404信息

您要查找的页面不存在。 您可能键入了错误的地址,或者页面可能已移动

下面是我申请的
Gemfile

source 'http://rubygems.org'
gem 'rails', '3.0.5'
gem 'sqlite3'

group :development do
  gem 'rspec-rails', '2.5.0'
end

group :test do
  gem 'rspec', '2.5.0'
  gem 'webrat', '0.7.1'
  gem 'spork', '0.9.0.rc4'
end

gem 'rake','~> 0.8.7'
你知道会出什么问题吗

@odin这是我的heroku日志,谢谢

2011-09-11T10:41:57+00:00 heroku[router]: GET vivid-sky-685.heroku.com/y dyno=web.1 queue=0 wait=0ms service=5ms status=404 bytes=728
2011-09-11T10:41:57+00:00 app[web.1]: 
2011-09-11T10:41:57+00:00 app[web.1]: 
2011-09-11T10:41:57+00:00 app[web.1]: Started GET "/y" for 93.186.31.80 at 2011-09-11 03:41:57 -0700
2011-09-11T10:41:57+00:00 app[web.1]: 
2011-09-11T10:41:57+00:00 app[web.1]: ActionController::RoutingError (No route matches "/y"):
2011-09-11T10:41:57+00:00 app[web.1]:   
2011-09-11T10:41:57+00:00 app[web.1]: 
2011-09-11T10:41:57+00:00 app[web.1]: 
2011-09-11T10:41:57+00:00 heroku[nginx]: 93.186.31.80 - - [11/Sep/2011:03:41:57 -0700] "GET /y HTTP/1.1" 404 728 "-" "Mozilla/5.0 (BlackBerry; U; BlackBerry 9300; en) AppleWebKit/534.8+ (KHTML, like Gecko) Version/6.0.0.546 Mobile Safari/534.8+" vivid-sky-685.heroku.com
2011-09-11T11:45:28+00:00 heroku[web.1]: Idl

2011-09-11T11:45:29+00:00 heroku[web.1]: State changed from up to down
2011-09-11T11:45:29+00:00 heroku[web.1]: State changed from down to created
2011-09-11T11:45:29+00:00 heroku[web.1]: State changed from created to starting
2011-09-11T11:45:30+00:00 heroku[web.1]: Stopping process with SIGTERM
2011-09-11T11:45:30+00:00 app[web.1]: >> Stopping ...
2011-09-11T11:45:30+00:00 heroku[web.1]: Process exited
2011-09-11T11:45:30+00:00 heroku[web.1]: Starting process with command `thin -p 16738 -e production -R /home/heroku_rack/heroku.ru start`
2011-09-11T11:45:33+00:00 app[web.1]: >> Thin web server (v1.2.6 codename Crazy Delicious)
2011-09-11T11:45:33+00:00 app[web.1]: >> Maximum connections set to 1024
2011-09-11T11:45:33+00:00 app[web.1]: >> Listening on 0.0.0.0:16738, CTRL+C to stop
2011-09-11T11:45:33+00:00 heroku[web.1]: State changed from starting to up
2011-09-11T12:53:00+00:00 heroku[web.1]: Idling
2011-09-11T12:53:01+00:00 heroku[web.1]: State changed from up to down
2011-09-11T12:53:02+00:00 heroku[web.1]: Stopping process with SIGTERM
2011-09-11T12:53:02+00:00 app[web.1]: >> Stopping ...
2011-09-11T12:53:02+00:00 heroku[web.1]: Process exited
2011-09-11T13:18:21+00:00 heroku[rake.1]: State changed from created to starting
2011-09-11T13:18:23+00:00 app[rake.1]: Awaiting client
2011-09-11T13:18:23+00:00 app[rake.1]: Starting process with command `bundle exec rake db:migrate`


2011-09-11T13:18:26+00:00 heroku[rake.1]: Process exited
2011-09-11T13:18:26+00:00 heroku[rake.1]: State changed from up to complete
2011-09-11T13:20:02+00:00 heroku[web.1]: Unidling
2011-09-11T13:20:02+00:00 heroku[web.1]: State changed from down to created
2011-09-11T13:20:02+00:00 heroku[web.1]: State changed from created to starting
2011-09-11T13:20:04+00:00 heroku[web.1]: Starting process with command `thin -p 48393 -e production -R /home/heroku_rack/heroku.ru start`
2011-09-11T13:20:06+00:00 app[web.1]: >> Thin web server (v1.2.6 codename Crazy Delicious)
2011-09-11T13:20:06+00:00 app[web.1]: >> Maximum connections set to 1024
2011-09-11T13:20:06+00:00 app[web.1]: >> Listening on 0.0.0.0:48393, CTRL+C to stop
2011-09-11T13:20:07+00:00 heroku[web.1]: State changed from starting to up
2011-09-11T13:20:07+00:00 app[web.1]: 
2011-09-11T13:20:07+00:00 app[web.1]: 
2011-09-11T13:20:07+00:00 app[web.1]: Started GET "/" for 118.137.144.220 at 2011-09-11 06:20:07 -0700
2011-09-11T13:20:08+00:00 app[web.1]: 
2011-09-11T13:20:08+00:00 app[web.1]: ActionController::RoutingError (uninitialized constant PagesController):
2011-09-11T13:20:08+00:00 app[web.1]:   
2011-09-11T13:20:08+00:00 app[web.1]: 
2011-09-11T13:20:08+00:00 app[web.1]: 
2011-09-11T13:20:08+00:00 heroku[router]: GET vivid-sky-685.heroku.com/ dyno=web.1 queue=0 wait=0ms service=403ms status=404 bytes=728
2011-09-11T13:20:08+00:00 heroku[nginx]: 118.137.144.220 - - [11/Sep/2011:06:20:08 -0700] "GET / HTTP/1.1" 404 728 "-" "Mozilla/5.0 (X11; Linux i686; rv:2.0) Gecko/20100101 Firefox/4.0" vivid-sky-685.heroku.com

您是否尝试在本地以生产模式运行?尝试
railsserver-e production
,看看是否会出现相同的错误,然后可以进行调试。还要确保你已经完成了heroku rake db:migrate

我也遇到了同样的问题;但是,在更改位于
config/environments/production.rb
中的production.rb的1行代码后

config.assets.compile = false


提交新的更改。然后我的示例应用程序在heroku上运行良好

我与heroku有一个非常相似的问题,从这个问题中找到了答案:

为了节省阅读时间,解决方案是使用高级选项更新“主页”,有一个问题:

“将此网页转发到其他网站或网页”

用一个
/
来填写这个,它应该可以工作。这听起来有点倒退,因为它实际上将/my_页面重定向到“/”。但思考的方式是:

炼油厂页面扩展正在查找url为“/”的页面 主页。因此,通过告诉标题为“主页”的页面,您需要它 要将url“/”设置为最终主页 就扩展而言。 (引自@Philip Arndt)


我使用的是postgresql,我的页面也没有出现在heroku上

此命令修复了它:

heroku run rake db:setup
然后

heroku rake db:migrate
我以前迁移过,但没有先完成安装

我也试过设置

config.assets.compile = true

在production.rb中,但这没有什么区别。

我知道这是一个老问题,但我也遇到了。我意识到在按下之前我没有在
config/routes.rb
中更改根路由。不更改它可能会导致本地出现欢迎页面,但在heroku上会出现上述错误。

因此我必须按此顺序运行,它对我有效

$ heroku rake db:migrate
$ heroku run rake db:setup

在我的例子中,它是一个缺少的起始页,在开发模式中没有引起问题,但在heroku上确实引起了上述问题。被接受的答案更能说明问题。

也遇到了这个问题。通过设置根路由解决了此问题。在我的例子中,config/routes.rb中的
root'pages#home'

如果未设置根路由,则会将您重定向到localhost:3000。因此,

您要查找的页面不存在。你可能打错了 地址或页面可能已移动


在应用程序中指定Ruby版本 Rails 5需要Ruby 2.2.0或更高版本。Heroku默认安装了最新版本的Ruby,但是您可以在文件中使用Ruby DSL来指定确切的版本

在文件末尾添加:


ruby“2.4.1”

1。始终在路由中设置根。这是rails 101

我不会让资产预编译一直是假的。对于生产应用程序,我觉得如果资产已预编译,它将提高整体速度

2。根据经验,我总是在推到git之前运行
rakeassets:precompile
。请试一试。然后提交到git存储库,然后提交到heroku。执行heroku重启操作

3。另一个原因可能是heroku rake db:migrate,请检查是否执行了该操作

4。这也是我为开发和生产组设置的GEM文件

group :development do 
    gem 'sqlite3'        
end

group :production do    
    gem 'pg'
    gem 'rails_12factor'
    gem 'heroku-deflater'   
end

我也有同样的问题,但问题是这个应用程序像根一样缺少家。Heroku的默认主页是此HTML。但如果您尝试所有已定义的路线,它们的工作方式如下:


appname.herokuapp.com/route

我遇到了相同的错误,但意识到我没有在config/routes.rb文件中将HTML动词从GET改为ROOT

它是
get”/hello,“application#hello”

我将其更新为
root“application#hello”


然后我将它推送到git并部署到生产环境中。

我面临同样的错误,因为我使用这个命令将同一个非主分支推送到heroku master。这显然会引起冲突

我还使用heroku run rake routes检查了路由。但输出不是我的实际路线。甚至连一个都没有。
将非主分支推送到heroku主分支的正确方法是


git push-f heroku您的分支机构\u name:master

@widjajajayd在您的控制台中键入“heroku logs”并发布您获得的打印输出。只是为了让您知道自己不是一个人,我遇到了这个问题。你找到原因了吗?我有这个问题。我在routes.rb中定义了联系我的路线,正在编写一份联系表格。当我访问heroku提供的url(例如www.example\u heroku\u url.com/)时,我得到了和你一样的404。这是因为我没有定义根路径或索引视图。因此,当我访问www.example\u heroku\u url.com/contact-me时,它起了作用。真是愚蠢的错误,但我想我会分享一下,以防它对某人有所帮助。我确实尝试了server-e制作,我仍然可以看到我的网站(虽然我丢失了css格式),我也做了heroku rake db:migrate,但问题仍然存在,我上传了我的heroku日志,感谢您的帮助,尝试安装“瘦”web服务器(
gem'thin'
,在您的gem文件中)然后进行
bundle exec rails server thin-e生产
,看看会发生什么。这就是他们在Heroku上使用的同一台服务器。即使使用上面的资产编译集,我也有同样的问题。heroku对bundle日志的深入研究表明,唯一的警告是建议添加gem rails u因子。令人惊讶的是,它有帮助。这是rails 4.0.1
group :development do 
    gem 'sqlite3'        
end

group :production do    
    gem 'pg'
    gem 'rails_12factor'
    gem 'heroku-deflater'   
end