Ubuntu Apache配置安装与ROR 应用

系统 Linux
我使用的是 Ubuntu Apache-alternate 8.04 命令行安装模式,下面的脚本适合 debian 系的发行版,理论上不兼容 RedHat 系的发行版。为方便起见,我将安装 ROR 环境写了一个 SHELL 脚本,直接执行即可方便的安装 ROR 环境,这里使用的 RAILS 版本为 2.0.2。

给大家推荐一款很不错的Ubuntu Apache系统很有学习价值,这里我主要讲解Ubuntu Apache系统的应用,包括介绍Ubuntu Apache包背景知识等方面。这里假设你的机器为干净的机器,

我使用的是 Ubuntu Apache-alternate 8.04 命令行安装模式,下面的脚本适合 debian 系的发行版,理论上不兼容 RedHat 系的发行版。为方便起见,我将安装 ROR 环境写了一个 SHELL 脚本,直接执行即可方便的安装 ROR 环境,这里使用的 RAILS 版本为 2.0.2。

请使用 sudo 前缀执行该脚本:

  1. install_ror.sh - Copy Code#!/bin/bash  
  2. INSTALL_HOME=~/ror_installer  
  3. if [ -d "$INSTALL_HOME" ]; then  
  4. echo INSTALL_HOME directory \"~/ror_installer\" already exist.  
  5. exit 1  
  6. fi  
  7. mkdir $INSTALL_HOME  
  8. pushd $INSTALL_HOME  
  9.  
  10. # Download files  
  11. apt-get -d -y install \  
  12. ruby libruby-extras \  
  13. libyaml-ruby libzlib-ruby libiconv-ruby libxml-ruby \  
  14. libdbi-ruby \  
  15. libmysql-ruby libdbd-mysql-ruby libdbd-sqlite3-ruby \  
  16. libfcgi-ruby1.8  
  1. wget -t0 -T15 http://rubyforge.org/download.php/35283/rubygems-1.1.1.tgz  
  2. wget -t0 -T15 http://rubyforge.org/download.php/29353/actionmailer-2.0.2.gem  
  3. wget -t0 -T15 http://rubyforge.org/download.php/29350/actionpack-2.0.2.gem  
  4. wget -t0 -T15 http://rubyforge.org/download.php/29551/activerecord-2.0.2.gem  
  5. wget -t0 -T15 http://rubyforge.org/download.php/29552/activeresource-2.0.2.gem  
  6. wget -t0 -T15 http://rubyforge.org/download.php/29553/activesupport-2.0.2.gem  
  7. wget -t0 -T15 http://rubyforge.org/download.php/29554/rails-2.0.2.gem  
  8. wget -t0 -T15 http://rubyforge.org/download.php/29751/rake-0.8.1.gem 
  1. # Install ruby  
  2. apt-get -y install \  
  3. ruby libruby-extras \  
  4. libyaml-ruby libzlib-ruby libiconv-ruby libxml-ruby \  
  5. libdbi-ruby \  
  6. libmysql-ruby libdbd-mysql-ruby libdbd-sqlite3-ruby \  
  7. libfcgi-ruby1.8  
  8.  
  9. # Install rubygems  
  10. tar xfv rubygems-1.1.1.tgz  
  11. pushd rubygems-1.1.1  
  12. ruby setup.rb  
  13. ln -s /usr/bin/gem1.8 /usr/bin/gem  
  14. popd  
  15.  
  16. # Install Gem  
  17. gem install rails -l --no-ri --no-rdoc  
  18.  
  19. # Clean  
  20. popd  
  21. rm -rf $INSTALL_HOME  


 
2) 安装 Ubuntu Apache
同样是 SHELL 脚本安装,请使用 sudo 前缀执行该脚本:

  1. install_Ubuntu Apache2.sh - Copy Code#!/bin/bash  
  2. # Download files  
  3. apt-get -d -y install Ubuntu Apache2 libUbuntu Apache2-mod-fcgid  
  4. # Install Ubuntu Apache  
  5. apt-get -y install Ubuntu Apache2 libUbuntu Apache2-mod-fcgid  
  6. ln -s /etc/Ubuntu Apache2/mods-available/rewrite.load /etc/Ubuntu Apache2/mods-enabled/rewrite.load 

3) 配置 Ubuntu Apache

ROR 应用的 Ubuntu Apache 配置,在 /etc/Ubuntu Apache2/Ubuntu Apache2.conf 的末尾添加以下代码:Ubuntu Apache2.conf - Copy CodeInclude /etc/Ubuntu Apache2/httpd.conf修改 httpd.conf 为以下内容:

  1. httpd.conf - Copy CodeDefaultInitEnv RAILS_ENV production  
  2. Alias "/redmine" "/var/www/redmine/public/"  
  3. <Directory "/var/www/redmine/public/">   
  4. Options Indexes ExecCGI FollowSymLinks   
  5. AllowOverride all   
  6. Order Deny,Allow   
  7. Allow from All   
  8. </Directory> 
  9. <Location /redmine/> 
  10. AddHandler fcgid-script .fcgi  
  11. FCGIWrapper "/usr/bin/ruby /var/www/redmine/public/dispatch.fcgi" .fcgi  
  12. RewriteEngine on  
  13. RewriteBase /redmine  
  14. RewriteRule ^$ index.html [QSA]  
  15. RewriteRule ^([^.]+)$ $1.html [QSA]  
  16. RewriteCond %{REQUEST_FILENAME} !-f  
  17. RewriteRule ^(.*)$ dispatch.fcgi?$1 [QSA,L]  
  18. </Location> 

4) 配置 ROR 应用
配置 ROR 应用,这里为方便期间,直接使用 sqlite3,ROR 程序为 redmine。请使用 sudo 前缀执行该脚本:

  1. install_app.sh - Copy Code#!/bin/bash  
  2. INSTALL_HOME=~/install_redmine  
  3. if [ -d "$INSTALL_HOME" ]; then  
  4. echo INSTALL_HOME directory \"~/install_redmine\" already exist.  
  5. exit 1  
  6. fi  
  7. mkdir $INSTALL_HOME  
  8.  
  9. # Download files  
  10. pushd $INSTALL_HOME  
  11. wget -t0 -T15 http://rubyforge.org/download.php/36468/redmine-0.7.1.tar.gz   
  12. popd  
  13.  
  14. # Install redmine  
  15. tar xfv $INSTALL_HOME/redmine-0.7.1.tar.gz -C /var/www/  
  16. mv /var/www/redmine-0.7.1 /var/www/redmine  
  17. cp /var/www/redmine/public/dispatch.fcgi.example /var/www/redmine/public/dispatch.fcgi  
  18. #---- begin database.yml ----  
  19. declare -x START_NO=$LINENO; if [ 0 -eq 1 ]; then  
  20. production:  
  21. adapter: sqlite3  
  22. database: db/production.sqlite3  
  23. timeout: 5000  
  24.  
  25. development:  
  26. adapter: sqlite3  
  27. database: db/development.sqlite3  
  28. timeout: 5000  
  29.  
  30. test:  
  31. adapter: sqlite3  
  32. database: db/test.sqlite3  
  33. timeout: 5000  
  34. fi; declare -x END_NO=$LINENO  
  35. #---- end database.yml ----  
  36. awk '{if(NR > ENVIRON["START_NO"] && NR < ENVIRON["END_NO"]) {print}}' \  
  37. $0 > /var/www/redmine/config/database.yml  
  38. pushd /var/www/redmine  
  39. rake db:create RAILS_ENV="production" 
  40. rake db:migrate RAILS_ENV="production" 
  41. #Load redmine's default data  
  42. echo en > loc  
  43. rake redmine:load_default_data RAILS_ENV="production" < loc 
  44. rm -f log/production.log  
  45. rm -f public/.htaccess  
  46. popd  
  47.  
  48. # Clean  
  49. rm -rf $INSTALL_HOME  

注:如果在 Linux 下部署,并使用 SQLite3 数据库时,***次访问 redmine 无法创建匿名用户,访问时会发生 500 错误,这是属于 redmine 的问题,要解决此问题,执行以下命令:交互式命令 - Copy Codesudo apt-get install sqlite3

  1. cd /var/www/redmine/db  
  2. sudo sqlite3 production.sqlite3  
  3. > INSERT INTO users ("created_on", "status", "last_login_on", 
    "hashed_password", "language", "updated_on", "admin", "type", "firstname", 
    "lastname", "mail", "auth_source_id", "mail_notification", "login") 
    VALUES('2008-05-21 04:31:54', 0, NULL, '', '', '2008-05-21 04:31:54', 'f', 
    'AnonymousUser', '', 'Anonymous', '', NULL, 'f', '');  
  4. > .exit  
  5. sudo Ubuntu Apache2ctl restart  
  6. ruby script/server -e production 

***,重启 Ubuntu Apache2:重启 Ubuntu Apache2 - Copy Codesudo Ubuntu Apache2ctl restart部署看似简单,写起脚本来可是非常费劲的,不过一劳永逸,以后想要部署可以直接参考使用了。

【编辑推荐】

  1. Ubuntu apache安装著名的开源http服务端
  2. Ubuntu apache2重启命令与主机配置文件
  3. 安装Ubuntu apache编译配置解压
  4. Ubuntu Apache配置测试及安装各种指令
  5. 配置文件Ubuntu Apache命令安装了
责任编辑:佚名 来源: csdn
相关推荐

2010-03-05 10:01:23

2010-01-07 16:34:08

Ubuntu apac

2010-01-04 10:28:47

Ubuntu Apac

2010-01-06 17:11:51

Ubuntu Apac

2011-03-22 12:53:35

UbuntuLAMPApache

2010-01-14 13:47:30

CentOS extm

2010-01-07 17:16:19

Ubuntu MySQ

2010-01-08 14:25:54

Ubuntu sudo

2022-03-07 11:02:02

ApacheTomcat运维

2010-03-01 16:51:53

CentOS VMwa

2011-01-21 17:43:13

2009-12-30 10:09:08

Ubuntu Apac

2010-01-12 16:21:57

Linux Yum安装

2012-05-30 10:09:57

ApacheTomcat

2011-08-16 15:16:26

UbuntuApache虚拟主机

2010-02-05 13:27:48

Ubuntu apac

2018-05-25 11:55:41

2010-05-28 09:15:50

配置MySQL

2011-03-11 16:42:38

Ubuntu安装LAMP

2010-03-05 10:37:20

Ubuntu ligh
点赞
收藏

51CTO技术栈公众号