我想我在我的头上,无法弄清楚如何调试或从这里去哪里?!任何指导将不胜感激!
问题:
- 开发环境:一切正常
- 生产:我收到“请求超时”错误
目标:
让“www.site.com/blog”显示来自“blog.site.com”的内容,而无需重定向/更改浏览器 URL
设置
- www.site.com 是 Heroku 上的 Rails 应用程序
- blog.site.com 是 Bluehost 上的 WordPress
所以我无权访问服务器配置
方法
使用rack-reverse-proxy gem,如如何使用子目录而不是子域?通过jplewicke
执行
宝石文件
gem "rack-reverse-proxy", :require => "rack/reverse_proxy"
config.ru(就在运行AppName ::Application 之前)
use Rack::ReverseProxy do
reverse_proxy(/^\/blog(\/.*)$/,'http://blog.site.com$1',
opts = {:preserve_host => true})
end
配置/路由.rb
match "/blog" => redirect("/blog/")
结果/问题
它在我的机器上开发时效果很好,但是当我将它投入生产时它会超时。它不仅会超时,而且之后整个应用程序都会挂起或其他情况,即每个请求甚至 www.site.com 都会超时(在尝试 blog.site.com 之前有效)。大约 5-10 分钟后 www.site.com 再次工作,但 blog.site.com 超时。
日志
2013-03-05 05:54:19+00:00 app web.1 - - 2013 年开始为 66.108.140.26/cpe-66-108-140-26.nyc.res.rr.com 获取“/resource” -03-05 05:54:19 +0000
2013-03-05 05:54:19+00:00 heroku 路由器 - - at=info method=GET path=/blog host=www.site.com fwd="66.108.140.26/cpe-66-108-140- 26.nyc.res.rr.com" dyno=web.1 queue=0 wait=0ms connect=1ms service=7ms status=301 bytes=105
2013-03-05 05:54:49+00:00 heroku 路由器 - - at=error code=H12 desc="Request timeout" method=GET path=/blog/host=www.site.com fwd="66.108. 140.26/cpe-66-108-140-26.nyc.res.rr.com" dyno=web.1 queue=0ms wait=0ms connect=2ms service=30000ms status=503 bytes=0
调试
我尝试在生产中打开调试...
配置/环境/production.rb
config.consider_all_requests_local = true
config.log_level = :debug
但没有什么真正显示出来只是一个通用的,
应用程序错误...无法提供您的页面...再试一次...检查日志。
这是唯一有意义的事情,因为它正在开发中
关于做什么的任何建议或想法?谢谢!