问题标签 [passenger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1288 浏览

ruby-on-rails - 有没有办法将 map.root 更改为指向“/”以外的内容?

我有 apache 2.2,mod_rails 在http://localhost运行。我想在http://localhost/ railsBlog上拥有我的 rails 应用程序。所以,我所做的是,我创建了一个虚拟主机:

现在,由于 URL 是http://localhost/ railsBlog,服务器将railsBlog视为我传入的控制器,这不是我想要的。所以当我去http://localhost/ railsBlog /home/index. 这不会进入我的“主”控制器和“索引”视图,因为它试图进入“ railsBlog ”控制器(不存在)和“主”视图(不存在)。

我认为解决此问题的一种方法是将 map.root 重新定义为/railsBlog,一切都会好起来的。但是怎么做?

我可以解决这个问题的另一种方法是将 config/routes.rb 修改为:

但是,这意味着每次部署到不同位置时都必须更改此文件。

或者,有没有其他方法可以解决这个问题?

0 投票
5 回答
421 浏览

ruby-on-rails - Slice 256 是否足以容纳至少 4 个 Rails 站点的 Apache2 + 乘客?

我有一个带有 4 个Rails 1.2.6站点的Slice 256 ,在Lighttpd + FastCGI上运行得相当不错(Ubuntu Server 8.04 LTS 从 6.06 LTS 升级);尽管它的配置如此陈旧,但对于我的小型网站来说,它已被证明足够可靠。

现在我想将一些升级到 Rails 2.x,我想知道相同的 Slice 256 是否可以采用Apache2 + Passenger配置,因为它在我的本地开发 Linux 机器上运行良好。

所以我的问题是:对于至少托管 4 个 Rails 站点的 Apache2 + 乘客来说,Slice 256 是否足够?

对此的任何建议和经验将不胜感激。

0 投票
2 回答
1302 浏览

ruby-on-rails - 不以“/”结尾的 Apache/Rails/Passenger 目录 URL 失败为 404

我正在使用 Apache 和乘客来运行 rails 应用程序。在我的 rails 应用程序中,我在公共目录的子目录中有一些静态内容。每个子目录中都有一个 index.html。

因此,在公共目录中,我有一个名为“b”的子目录,其中包含一个 index.html。所以它是这样的:

/public/b/index.html

我有这些页面的链接,格式如下:

http://a.com/b

如果我在我的常规非 Rails Web 目录中执行此操作,Apache 会正确地将此 URL 重写为http://a.com/b/,然后显示 index.html。只有在访问我的 rails 应用程序时它才不起作用。事实上,如果我关闭乘客模块......所以它只是像普通文档根一样访问我的 Rails 应用程序,它也可以正常工作。

我到底需要做什么才能让它与乘客正常工作?同样,当乘客不参与时,它在 apache 本身中也能正常工作。

我正在运行乘客 2.1.3。我有另一台运行乘客 2.0 的服务器似乎没有这个问题,但除了乘客本身的不同版本之外,我在配置中没有看到任何不同。

帮助!这两天一直在努力,没有任何改善!

0 投票
1 回答
499 浏览

ruby-on-rails - 当我尝试使用 https 访问我的 rails 站点时,为什么会收到 404 错误?

我的服务器目前正在托管一个 php 站点。该站点已对某些页面使用 ssl。现在我正在过渡到 Rails,我所有的新 Rails 应用程序都进入了一个子文件夹。乘客已设置好,我的应用程序运行良好。一个问题,如果我尝试使用 ssl 访问这些页面,我会收到 404 错误。显然,apache 正在寻找文字文件夹,而不是像往常一样将其交给Passenger。我错过了什么?

0 投票
2 回答
5939 浏览

ruby-on-rails - 在 Rails 中直接“放置”到 Apache 日志

将调用puts写入 Apache 日志文件的配置设置是什么?(使用乘客在 Apache 上运行 Rails)

谢谢

0 投票
2 回答
580 浏览

ruby-on-rails - Rails/Passenger/未知内容类型

我们有以下情况:

  1. 我们调用一个在控制器中运行动作的 url。该操作运行时间相当长 - 它构建一个大的 XML 字符串,生成一个 PDF,并且应该在完成后重定向。

  2. 大约 60 秒后,浏览器得到 200,但内容类型为“application/x-unknown-content-type”,没有正文,也没有响应标头(使用 Tamper 查看标头)

  3. 控制器操作实际上继续运行到完成,生成 PDF

这发生在我们的 prod 环境中,在将控制器操作分阶段运行到完成时,按预期重定向。

有什么建议去哪里看吗?

我们在 Apache/Phusion Passenger 上运行 Rails 2.2.2。

谢谢,

0 投票
2 回答
954 浏览

ruby-on-rails - 尝试使用 https 时发生乘客崩溃

我在共享主机帐户上使用 ssl_requirements 插件。该托管服务提供商使用Passenger 来管理Rails。一切正常,直到我尝试转到需要 ssl 的页面(通过添加ssl_required过滤器强制执行)。发生这种情况时,Passenger 崩溃并返回 500 错误。错误内容如下:

这是一个基本场景:

  1. 用户正在使用 http 浏览非敏感数据。
  2. 用户转到注册表单(需要 https)
  3. Ssl_requirement 发现用户没有使用正确的协议并将他们重定向到使用 https 的 url。
  4. 乘客收到此请求并尝试生成一个新的 Rails 应用程序。
  5. 当它使用spawn_application方法时,它会遇到错误并崩溃

问题是我不知道问题出在哪里。我不认为这可能是 https 的问题,因为我可以手动输入 https 前缀并且一切正常。我认为问题在于 ssl_requirement 插件或乘客处理这个新 https 请求的方式。

大家有遇到过这样的场景吗?如果是这样,您能否指出一些资源来解决这个问题?

谢谢。

0 投票
1 回答
4586 浏览

ruby - 机架和乘客有什么区别?

我正在尝试将 Sinatra 应用程序部署到 Dreamhost,它显示以下内容:

由于DH 支持Passenger,而后者又支持基于Rack 的ruby 应用程序,DH 确实支持Sinatra。

我很难解析该语句 - Rack 和 Passenger 之间有什么区别(以及为什么 Sinatra “基于 Rack”)?

0 投票
2 回答
4991 浏览

ruby-on-rails - Phusion Passenger 如何重用线程和进程?

我正在使用 Phusion Passenger 设置一个运行多个 Ruby on Rails Web 应用程序的 Apache2 网络服务器。我知道Passenger 会产生Ruby 进程来处理请求。我有以下问题:

  • 如果必须同时处理多个请求,Passenger 会产生多个进程还是多个(Ruby)线程?如何配置它以使其始终生成单线程进程?
  • 如果我有两个 Rails 应用程序,假设对应用程序 A 的请求转到进程 1,然后对应用程序 B 的请求到达。进程 1 是否也有可能处理此请求?这何时以及如何可能?换句话说,是否允许一个进程处理多个 Rails 应用程序的请求?
  • 我在多个 URL 和多个虚拟主机(例如 http:// 和 https://)中导出了相同的 Rails 应用程序。同一个进程能否为不同的虚拟主机提供服务?(答案似乎是肯定的,我在响应虚拟主机 A 的请求时设置了一个全局变量,并且我能够检索虚拟主机 B 中的值。)
0 投票
2 回答
4322 浏览

ruby-on-rails - Rails 应用程序随机崩溃并出现错误“脚本标题过早结束”

我在 DreamHost 上托管 Ruby on Rails 2.0.2 应用程序。它位于 Apache 2 服务器上,运行在 Phusion Passenger 之上。

该应用程序经常返回一个 500 错误“Rails 应用程序无法正常启动”,但时间是随机的。当应用程序处于较高负载时似乎会发生这种情况,但我无法确认这一点。它每天只有大约 2,000 次浏览量,所以我认为负载应该不是问题。

Apache 日志将这 500 个响应与错误相关联:“脚本标头过早结束”。只看今天上午 9 点的日志,错误出现的频率高达每分钟三到四次。这显然是不可接受的。

不太常见的是,应用程序会抛出一个带有堆栈跟踪和错误“Broken pipe”的 Phusion Passenger 页面。

Rails 日志没有列出任何这些错误。

这发生在 DreamHost 上托管的登台和实时站点上,但我无法在本地开发服务器上复制它。

所以我想真正的问题是:我从哪里开始调试这个问题?