Tôi không thể cho cuộc sống của tôi để Redmine chạy. Tôi không phải là lập trình viên Ruby. Tôi đã thử sử dụng apt-get
, nhưng trình cài đặt không thành công nên tôi đã chọn thực hiện bằng tay từ nguồn của Redmine. Khi tôi thử khởi chạy nó trong trình duyệt của mình, tôi nhận được:
Lỗi ứng dụng Ứng dụng
Rails không khởi động đúng cách
Đây là tệp nhật ký:
[notice] FastCGI: process manager initialized (pid 11163)
[notice] Apache/2.2.22 (Ubuntu) mod_fastcgi/mod_fastcgi-SNAP-0910052141 Phusion_Passenger/2.2.1$
[warn] FastCGI: (dynamic) server "/project/redmine/public/dispatch.fcgi" started (pid 11185)
/usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': no such file to load -- fcgi (LoadE$
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /project/redmine/public/dispatch.fcgi:4
Đầu tiên, đây là phiên bản của tôi:
$ ruby -v; rails -v; gem -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
Rails 3.2.6
1.8.15
$ uname -a
Linux host 3.2.0-29-generic-pae #46-Ubuntu SMP Fri Jul 27 17:25:43 UTC 2012 i686 i686 i386 GNU/Linux
Theo tài liệu của Redmine, nó sẽ hoạt động tốt.
Tôi có redmine nằm ở /project/redmine
. Tất cả các tệp trong đường dẫn đó có 755 quyền ngoại trừ thư mục nhật ký là 666. Tôi đang sử dụng cấu hình apache sau:
Alias /redmine "/project/redmine/public/"
<Directory "/project/redmine/public/">
Options Indexes ExecCGI FollowSymLinks
RailsBaseURI /project/redmine
PassengerResolveSymlinksInDocumentRoot on
Order allow,deny
Allow from all
AllowOverride all
</Directory>
Apache có các mô-đun sau:
lõi mod_log_config mod_logio prefork http_core mod_so mod_actions mod_alias mod_auth_basic mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_deflate mod_dir mod_env mod_fastcgi mod_mime mod_negotiation mod_passenger mod_php5 mod_reqtimeout mod_rewrite mod_setenvif mod_status
Đây là những gì công văn của tôi.fcgi. Đó là mặc định, nhưng hai require
dòng đầu tiên đã được tôi thêm vào để cố gắng sửa lỗi này. Nó giống như:
#!/usr/bin/ruby
require 'rubygems'
require 'fcgi'
require File.dirname(__FILE__) + '/../config/boot'
require File.dirname(__FILE__) + '/../config/environment'
class Rack::PathInfoRewriter
def initialize(app)
@app = app
end
def call(env)
env.delete('SCRIPT_NAME')
parts = env['REQUEST_URI'].split('?')
env['PATH_INFO'] = parts[0]
env['QUERY_STRING'] = parts[1].to_s
@app.call(env)
end
end
Rack::Handler::FastCGI.run Rack::PathInfoRewriter.new(RedmineApp::Application)
Tôi đang thiếu gì?
fcgi
đá quý?sudo gem install fcgi