操作
如何在Debian Squeeze上使用Postgresql、Ruby-on-Rails和Apache2-Passenger安装Redmine¶
这个操作指南类似于如何在Debian上使用Ruby-on-Rails和Apache2-Passenger安装Redmine,但稍微简短一些,并且使用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
your-ip/redmine 或
your-domain/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年前 · 2011-05-19 11:39 · 11次修订