redmine 和 mod_vhost_dbd

Posted

技术标签:

【中文标题】redmine 和 mod_vhost_dbd【英文标题】:redmine and mod_vhost_dbd 【发布时间】:2013-02-17 04:04:51 【问题描述】:

我在使用 apache 中的 vhost_dbd_module 运行 redmine 时遇到问题。 Redmine 安装在 /var/www/redmine/ 目录下。我的 apache 配置外观:

服务器名主机名 DocumentRoot "/var/www/" # 这不起作用 # DocumentRoot "/var/www/redmine/public" # 这适用于 REDMINE 选项 FollowSymLinks -MultiViews -Indexes 允许覆盖所有 目录> DBDriver mysql DBDParams host=localhost,user=test,pass=test,dbname=test DBDocRoot "SELECT document_root FROM vhosts WHERE server_name = %s" HOSTNAME 虚拟主机>

Field document_root 来自数据库返回 '/var/www/redmain/public' - 所以它应该可以工作。它适用于索引文件位于“/var/www/project/public”下的 php 项目。除了页面返回 404,因为在 /var/www/redmain/public 中没有索引文件。我想要通用配置

有什么建议吗? 最好的问候,彼得

【问题讨论】:

【参考方案1】:

没有 index.html 是可以的 :) 检查您的 config/routes.rb。 如果 rails 服务正在运行,那么您的 redmine rails 检查您的 routes.rb 并在那里提供默认页面(查看)。

【讨论】:

但是你到底有什么建议呢?如果我输入错误的 url,我没有专门的 404 页面错误,所以我认为没有轨道在运行。服务器仍然提供来自 public redmine 目录的文件。 /var/www/redmine/public 在你的情况下是正确的目录,但是你得到一个 404 因为可能没有运行 rails 任务,为你的 redmine 安装启动你的 rails 服务器,然后一切都很好: )【参考方案2】:

Passenger 作为 apache 模块与用于定义“动态”文档根的所有模块(包括 mod_vhost_dbd)不兼容。对于乘客,您必须在 Apache 配置中静态配置您的应用程序。

通常,您将很难使用任何 Ruby 应用服务器模拟您的 PHP 设置,因为它们希望启动一次并连续运行,这与 PHP“应用程序”不同,它充当脚本解析并为每个请求启动新的脚本。您应该重新考虑为持久应用程序服务器进程设置。

【讨论】:

你能推荐其他配置吗?我想在我的服务器(rvm)中有多个 ruby​​/gem 实例。每个项目可以有不同的配置(gemset),也可以有不同版本的乘客(?)(??)。 ProxyPass 工作正常,但他适用于一两个实例,而不是更多实例。 Passenger 几乎永远支持多个 gemset。不同的红宝石仅在 4.0 中受支持。如果您有许多不同的配置,我仍然宁愿在此之前使用独角兽、瘦身或乘客独立与代理之类的东西。它使您的基础架构组件之间的依赖性大大降低。【参考方案3】:

我用下面的内容创建了 .htaccess 并且它工作了 :)

RailsBaseURI / 乘客AppRoot /var/www/redmine

【讨论】:

以上是关于redmine 和 mod_vhost_dbd的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Centos 上安装 gitlab 和 redmine

Redmine 和GitBlit仓库服务器整合

VisualSVN 和 redmine 配合使用的问题

redmine中关于新建项目的权限问题

redmine 和 mod_vhost_dbd

redmine 可使用几种数据库?