我安装了Redmine在 MacOSX Server 10.6.8 上根据此安装说明到目前为止一切正常:当我启动 webrick 时,服务器会提供 Redmine 页面。gems 和 redmine 安装在用户“redmine”下。
之后我按照描述配置了 apache2 和 Passenger这里。根据描述,我还安装了乘客玻璃它将虚拟主机配置文件存储在 中/private/etc/apache2/passenger_pane_vhosts
。这是我在多次手动尝试和错误后得出的结论。至少,现在我可以访问乘客错误页面。
// redmine.vhost.conf
<VirtualHost *:80>
ServerName myserver
ServerAlias localhost
DocumentRoot "/Users/redmine/Sites/redmine"
# RackEnv production
# RackBaseURI /
RailsEnv production
RailsBaseURI /
# PassengerUser www-data
# PassengerGroup www-data
<Directory "/Users/redmine/Sites/redmine">
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
然而,乘客模块仍然会遇到以下错误。
Error message: No such file or directory - config/environment.rb
网络服务器的/var/log/apache2/error_log
说明如下。
[warn] NameVirtualHost *:80 has no VirtualHosts
[notice] Apache/2.2.21 (Unix) Phusion_Passenger/3.0.12 configured --
resuming normal operations
[ pid=21824 thr=2151905620 file=utils.rb:176 time=2012-06-01 18:22:07.126 ]: ***
Exception Errno::ENOENT in PhusionPassenger::ClassicRails::ApplicationSpawner
(No such file or directory - config/environment.rb) (process 21824,
thread #<Thread:0x0000010086f2a8>):
我尝试了乘客用户切换功能正如文档中所述 - 从我的配置文件中可以看出。不过,我没有成功。
更新:(2012 年 6 月 4 日)
在我改变了文档根目录和目录路径为/Users/redmine/Sites/redmine/public
Holger 建议的 Redmine 网站可以在 下访问http://myserver
。但是,无法在 下访问http://myserver/redmine
;文件夹404.html
的public/
已提供服务。
我猜 Redmine 可以在 下访问,http://myserver
因为我覆盖了文档根目录整个 Apache 服务器 (?)。但这不是我想要的。如果不设置文档根目录在redmine.vhost.conf
我遇到以下错误页面。
Forbidden
You don't have permission to access / on this server.
Additionally, a 403 Forbidden error was encountered while trying to
use an ErrorDocument to handle the request.
Apache/2.2.21 (Unix) Phusion_Passenger/3.0.12 Server at myserver Port 80
问题:我必须怎样配置服务器才能获取所需的http://myserver/redmine
URL?
答案1
根据乘客文件您必须使用public
目录作为文档根目录。在您的例子中,该目录为/Users/redmine/Sites/redmine/public
。
这样,只有真正公开的文件才会位于文档根目录中,Passenger 才能找到正确的应用程序根目录。您永远不应该将任何实际的代码文件(甚至更糟:配置文件)放入文档根目录中,因为任何人都可以自由读取它们。
答案2
仅适用于使用 Bitnami-Stack 安装 Redmine 的用户:
我真的很好奇,为什么我在升级并重新启动操作系统后会得到与 ThreadOpener 相同的错误。发行版还安装了 apache 和 mysql,并启动了这个。BitNami 在 Bundle 中有自己的 apache- 和 Mysql-Server。
解决方案:停止 Apache 和 mysql,然后使用以下命令启动 BitNami:
cd /opt/redmine-2.3.1-3
ctlscript.sh start mysql
ctlscript.sh start apache
这解决了我的问题!
答案3
要挂载为 /redmine URL,请尝试
RewriteBase /redmine/
在您的 VirtualHost 中