專案

一般

個人檔案

動作

如何在 Debian Squeeze 上安裝 Redmine 搭配 Postgresql、Ruby-on-Rails 和 Apache2-Passenger

本操作指南類似於如何在 Debian 上安裝 Redmine 搭配 Ruby-on-Rails 和 Apache2-Passenger,但稍微簡短一些,並使用 Postgresql 而不是 Mysql 作為資料庫伺服器。
應該注意的是,Redmine 及其所有依賴項都可以在 Debian 的儲存庫中以套件的形式獲得,因此不需要像我們在本操作指南中那樣從 svn 下載 Redmine。

首先,我們以 root 身分登入並安裝一些必要的套件

su
apt-get install postgresql-8.4 apache2 subversion rake rubygems libopenssl-ruby libpgsql-ruby libapache2-mod-passenger
gem install -v=2.3.5 rails

在配置 Redmine 之前,我們需要在 Postresql 中建立一個使用者和一個資料庫。 請務必將 <password> 替換為您的密碼。
su postgres
psql
postgres=# CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD '<password>' NOINHERIT VALID UNTIL 'infinity';
postgres=# CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine TEMPLATE template0;
postgres=# \q
exit

現在,讓我們下載 Redmine 並進行配置
cd /tmp
svn co http://redmine.rubyforge.org/svn/branches/1.0-stable redmine-1.0
mv redmine-1.0/ /var/lib/redmine
cd /var/lib/redmine

首先是一些資料庫的東西。 請將 <password> 替換為您的密碼。
echo "production:
 adapter: postgresql
 database: redmine
 host: localhost
 username: redmine
 password: <password>
 encoding: utf8
 schema_search_path: public" > config/database.yml

RAILS_ENV=production rake config/initializers/session_store.rb
rake generate_session_store
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data 

最後,我們設定 Apache。 建立一個指向 www 目錄的符號連結,並將所有權授予 www-data。
ln -s /var/lib/redmine/public /var/www/redmine
chown -R www-data:www-data /var/www/redmine

我們啟用網站並重新啟動 Apache。
echo "RailsBaseURI /redmine" > /etc/apache2/sites-available/redmine
a2ensite redmine
/etc/init.d/apache2 restart

就是這樣。 您可以在以下位置找到 Redmine:

localhost/redmine
您的 IP/redmine 或
您的網域/redmine

如果您需要使用沒有別名(/redmine)的正常網域運行 redmine,您可以按照以下說明進行操作。

有兩種可能性
  • 使用 mod_fcgid
  • 使用已安裝的 mod_passenger

使用 mod_fcgid
為 Apache 安裝 fcgid 模組

aptitude install libapache2-mod-fcgid

配置範例虛擬主機 /etc/apache2/sites-available/yourvirtualhost

<VirtualHost *:80>
  ServerAdmin mail@yourserver
  ServerName  www.redmine.org

  DefaultInitEnv RAILS_ENV production
  DefaultInitEnv GEM_PATH /var/lib/gems/1.8

  DocumentRoot /var/lib/redmine/public
  <Directory /var/lib/redmine/public>
    Options +FollowSymLinks +ExecCGI
    RewriteEngine On
    RewriteRule ^$ index.html [QSA]
    RewriteRule ^([^.]+)$ $1.html [QSA]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
    ErrorDocument 500 "<h2>Application error</h2>Rails application failed to start properly" 
    AllowOverride None
    #AllowOverride all
    Order allow,deny
    allow from all
  </Directory>
  # Possible values include: debug, info, notice, warn, error, crit,
  # alert, emerg.
  LogLevel warn

  CustomLog /var/log/apache2/access.log combined
  ErrorLog /var/log/apache2/error.log

  ServerSignature Off
</VirtualHost>

啟用新的虛擬主機並重新啟動 Apache mod-rewrite 也需要

cd /etc/apache2/sites-available
a2ensite yourvirtualhost
a2enmod rewrite
/etc/init.d/apache2 restart

請記住更改 /var/lib/redmine/files/ 的所有者和權限(用於上傳檔案)

chown -R www-data:www-data /var/lib/redmine/files/
chmod -R 0777 /var/lib/redmine/files/

使用以下帳號登入:使用者:admin,密碼:admin

使用已安裝的 mod_passenger
(*在 Debian 6.0.1、Apache 2.2.16 和 mod_passenger 2.2.11 上測試過*)

在 /etc/apache2/sites-available 下建立一個簡單的配置檔案

<VirtualHost *:80>
  ServerAdmin mail@yourserver
  ServerName  www.redmine.org

  DocumentRoot /var/lib/redmine/public
  <Directory /var/lib/redmine/public>
    Options -MultiViews
    allow from all
  </Directory>
  # Possible values include: debug, info, notice, warn, error, crit,
  # alert, emerg.
  LogLevel warn

  CustomLog /var/log/apache2/access.log combined
  ErrorLog /var/log/apache2/error.log

  ServerSignature Off
</VirtualHost>

注意:請記住以所有者身分進行更改並設定權限。

C. X. 更新於 大約 13 年前 · 11 個修訂版本