Server-Side/Rails2011. 3. 2. 22:50
윈도우즈 운영체제에서 Rails 프로젝트를 생성한 직후에 돌려보면 sqlite3.dll이 없어서 수행할 수 없다는 에러가 나온다.
이러한 이유는 기본 데이터베이스가 sqlite이기 때문이다. 


1. 기본 데이터베이스를 mysql로 하기
# rails <app name> --database=mysql

2. sqlite3 설치하기
sqlite 사이트에서 sqlite-shell-win32-x86-3070500.zip, sqlite-dll-win32-x86-3070500.zip 두개를 다운받아서 압축을 푼다.
그러면 sqlite3.def, sqlite3.dll, sqlite3.exe가 나온다. 이 파일들을 Ruby디렉토리 안의 bin에 옮긴다.
해당 Rails 프로젝트에서 gem install sqlite3-ruby 를 실행한다.


참고 사이트
Posted by 준피
Server-Side/Linux2011. 1. 11. 10:41
Install Ruby & Package
# sudo apt-get install ruby rake rubygems
# sudo apt-get install libmysql-ruby
# sudo apt-get install libopenssl-ruby1.8

# sudo apt-get install build-essential
# sudo apt-get install apache2-prefork-dev
# sudo apt-get install libapr1-dev
# sudo apt-get install libaprutil-dev

Install Rails
# gem install rails -v=2.3.5

Install Redmin
# wget http://rubyforge.org/frs/download.php/71723/redmine-1.0.0.tar.gz
# tar xzfv redmine-1.0.0.tar.gz -C /var/www
# cd /var/www
# ln -s ./redmine-1.0.0 redmine

Create Database
# mysql -u root -p
mysql> create database redmine character set utf8;
mysql> create user 'redmine'@'localhost' identified by 'password';
mysql> grant all privileges on redmine.* to 'redmine'@'localhost';
mysql> flush privileges;

Configuration Database
# cd /var/www/redmine/config
# cp database.yml.example database.yml
# vi database.yml
----------------------------------
production:
    adapter: mysql
    database: redmine
    host: localhost
    username: redmine
    password: redmine
----------------------------------

Start Redmine
# cd /var/www/redmine
# rake generate_session_store
# RAILS_ENV=production rake db:migrate
# RAILS_ENV=production rake redmine:load_default_data
# mkdir -p tmp public/plugin_assets     <= 보통 디렉토리가 있다.
# adduser redmine
# passwd redmine
# sudo chown -R redmine:redmine files log tmp public/plugin_assets
# sudo chmod -R 755 files log tmp public/plugin_assets
# ruby script/server webrick -e production

3000번 포트로는 redmine 접속이 가능하지만, Passenger를 이용해서 아파치(80)포트와 연동하자.

Install & Configure Passenger
# sudo apt-get install libapache2-mod-passenger libapache2-mod-fastcgi

# vi /etc/apache2/mods-available/passenger.conf
-----------------------------------------------------------
<IfModule mod_passenger.c>
    PassengerRoot    /usr
    PassengerRuby   /usr/bin/ruby
   PassengerDefaultUser    redmine     <= 추가
</IfModule>
-----------------------------------------------------------

# vi /etc/apache2/sites-enabled/000-default
-----------------------------------------------------------
DocumentRoot /var/www     <= 확인

# 추가 #
<Directory /var/www/redmine>
    RailsBaseURI /redmine/public
    PassengerResolveSymlinksInDocumentRoot on
    Options Indexes ExecCGI FollowSymLinks
    Order allow,deny
    Allow from all
    AllowOverride all
</Directory>
-----------------------------------------------------------

# vi /var/www/redmine/public/.htaccess
-----------------------------------------------------------
# 확인 #
RewriteEngine On
RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
-----------------------------------------------------------

# cd /var/www/redmine/public
# cp ./dispatch.fcgi.example ./dispatch.fcgi

# a2enmod passenger
# a2enmod fastcgi
# apache2ctl restart

http://your.ip.address:3000 
http://your.ip.address/redmine/public 

위의 주소로 접속이 가능하다.

Apply VirtualHost
# vi /etc/apache2/sites-enabled/000-default
------------------------주석처리한다.--------------------------------
#<Directory /var/www/redmine>
#    RailsBaseURI /redmine/public
#    PassengerResolveSymlinksInDocumentRoot on
#    Options Indexes ExecCGI FollowSymLinks
#    Order allow,deny
#    Allow from all
#    AllowOverride all
#</Directory>
-------------------------------------------------------------------

# vi /etc/apache2/sites-available/redmine.your_domain.com
-------------------------------------------------------------------
<VirtualHost *:80>
        ServerName      redmine.your_domain.com
        ServerAlias       redmine
        DocumentRoot    /var/www/redmine/public

        RailsBaseURI    /
        RailsEnv        production
        PassengerMaxPoolSize    4

        <Directory /var/www/redmine/public>
                Options FollowSymLinks
                AllowOverride   None
                Order   allow,deny
                Allow   from all
        </Directory>

        LogLevel        info
        ErrorLog        /var/log/apache2/redmine-error.log
        CustomLog       /var/log/apache2/redmine-access.log combined
</VirtualHost>
-------------------------------------------------------------------
# sudo a2ensite redmine.your_domain.com
# /etc/init.d/apache2 reload

http://your.ip.address:3000 
http://redmine.your_domain.com/

Reference

Application error

Rails application failed to start properly
/var/www/redmine/public/.htaccess file을 삭제한다.
# cd /var/www/redmine/public
# mv .htaccess .htaccess.orig



Posted by 준피