`

ubuntu服务器上安装RoR和Lighttpd, Fastcgi

阅读更多

ubuntu服务器上安装RoR和Lighttpd, Fastcgi


Author: guoshuang


这两天需要在ubuntu服务器上通过ssh安装ruby on rails支持环境,同时安装mysql,并用lighttpd和fastcgi支持web。 服务器为ubuntu6.10,root身份登陆,现记个流水账:


apt-get update


// 安装ruby

apt-get install ruby ri rdoc irb ri1.8 ruby1.8-dev libzlib-ruby


// 检查ruby是否安装正确

ruby –version


// 安装ruby gems, 这个步骤演示了apt-get等包管理之前的悲惨世界

// 参见: http://www.urbanpuddle.com/articles/2006/12/07/install-ruby-rails-on-ubuntu-edgy-eft


wget http://rubyforge.org/frs/download.php/17190/rubygems-0.9.2.tgz

tar xfvz rubygems-0.9.2.tgz

cd rubygems-0.9.2

ruby setup.rb


// 检查ruby gem是否安装正确

gem –version


// 更新

gem update –system


// 用ubuntu的包管理软件安装mysql服务器版

// 参见: http://ariejan.net/2006/12/03/installing-rails-on-ubuntu-dapper-edgy/

apt-get install mysql-server

apt-get install libmysqlclient15-dev


// 用ruby 的包管理软件gem安装mysql for ruby

gem install mysql


// 检查mysql是否安装正确,个人习惯,类似语句不再注释

mysql –version


// 安装ruby on rails

gem install rails -y

rails –version


// 用rails生成一个测试项目


mkdir ruby

cd ruby

rails demo

cd demo


// 看看生成的项目有无异常

ruby script/server

ruby script/console


// 此处感觉需要一个编辑器,临时决定安装emacs

apt-get install emacs

emacs –version


// 生成一个模型,跟数据库打打交道

ruby script/generate model Note


// 用emacs编辑生成的migrate文件,添加一个简单的string数据列。

// 生成数据库表结构。

rake db:migrate


// 进入console环境,键入Note.count, Note.new等测试下mysql是否跟rails配合工作良好

ruby script/console


// 安装lighttpd及fastcgi for ruby

apt-get install lighttpd libfcgi-dev libfcgi-ruby1.8

/usr/sbin/lighty-enable-mod fastcgi

/usr/sbin/lighty-enable-mod proxy


至此软件安装完毕,需要配置lighttpd.conf, 这其间历尽千山万水,总算得到正常的结果。

emacs /etc/lighttpd/lighttpd.conf, 输入:

———————-

server.pid-file = "/var/run/lighttpd.pid"

server.port = 80

server.username = "tom"

server.groupname = ""tom"

server.bind = "1.2.3.4″ # your static IP address

server.tag = "lighttpd"

server.errorlog = "/home/tom/log/lighttpd_error.log"

accesslog.filename = "/home/tom/log/lighttpd_access.log"

server.document-root = "/home/tom/ruby"

server.modules = (

"mod_access",

"mod_accesslog",

"mod_fastcgi",

"mod_rewrite",

"mod_redirect"

)


mimetype.assign = (

".css" => "text/css",

".gif" => "image/gif",

".htm" => "text/html",

".html" => "text/html",

".jpeg" => "image/jpeg",

".jpg" => "image/jpeg",

".js" => "text/javascript",

".png" => "image/png",

".txt" => "text/plain"

)


index-file.names = ( "dispatch.fcgi", "index.html" )

static-file.exclude-extensions = ( ".fcgi", ".rb" )

var.demoapp = "/home/tom/ruby/demo"

$HTTP["host"] == "demo.yourdomain.com" {

server.document-root = var.demoapp + "/public"

server.error-handler-404 = "/dispatch.fcgi"

url.rewrite = ( "^/$" => "index.html", "^([^.]+)$" => "$1.html" )

fastcgi.server = ( ".fcgi" => ( "localhost" => (

"min-procs" => 1,

"max-procs" => 1,

"socket" => var.demoapp + "/tmp/sockets/fcgi.socket",

"bin-path" => var.demoapp + "/public/dispatch.fcgi",

"bin-environment" => ( "RAILS_ENV" => "production" )

) ) )


}


———————-


/etc/init.d/lighttpd restart


安装过程中的主要排错记录:

1) 启动lighttpd的过程中, 提示"(network.c.300) can’t bind to port: 0.0.0.0 80 Address already in use"

http://www.urbanpuddle.com/articles/2006/12/07/install-ruby-rails-on-ubuntu-edgy-eft

(Update: I don’t like it but if you get an error when you try to start lighttpd like: "(network.c.300) can’t bind to port:

0.0.0.0 80 Address already in use" then use sudo killall lighttpd to stop lightty instead.)


2) 使用root用户不能启动lighttpd


3) lighttpd启动正常, 但rails route不工作, 请求都转到404


必须使用$HTTP["host"], 即vitual hosting, 参见: http://forum.textdrive.com/viewtopic.php?pid=125188

不能使用统一的配置, 如:http://duncandavidson.com/archives/153

分享到:
评论

相关推荐

    用于ROR应用的lighttpd配置模板

    在开发和部署Ruby on Rails(简称ROR)应用程序时,选择合适的服务器软件是至关重要的一步。Lighttpd是一个轻量级、高效的Web服务器,尤其适合处理动态内容,如Rails应用。"用于ROR应用的lighttpd配置模板"提供了一...

    ubuntu 10.10系统安装及vim(ROR)开发环境完整配置

    在本文中,我们将深入探讨如何在Ubuntu 10.10操作系统上进行系统安装,并配置一个完整的Vim编辑器环境,以便进行Ruby on Rails(ROR)开发。Ubuntu 10.10,代号“Maverick Meerkat”,是Ubuntu的一个老版本,但依然...

    Linux系统平台上安装和配置Ruby on Rails

    首先,确保你的Linux系统已经安装了GCC编译器,这是构建和安装许多开源软件所必需的工具。你可以通过运行`gcc -v`来检查它的版本。如果GCC未安装,你需要从Linux发行版的安装光盘或使用包管理器(如apt-get或yum)...

    RoR性能优化经验谈

    RoR通常在Unix类操作系统上运行最佳,如RHEL、CentOS、Ubuntu和SuSE Linux。对于AMD Opteron x86_64架构的服务器,SuSE Linux提供了更好的优化。64位操作系统能够充分利用硬件性能,但也会消耗更多内存。 文件系统...

    Ruby on Rails安装包全集(Linux)

    7. **Install Ruby Rails Lighttpd MySQL on Ubuntu or FreeBSD - Huihoo Wiki - Open Source Wiki.htm**: 这是一个安装指南文档,详细描述了如何在Ubuntu或FreeBSD系统上安装Ruby、Rails、Lighttpd和MySQL,形成一...

    Windows 上搭建 ROR环境

    ### Windows上搭建Ruby on Rails(ROR)环境详解 #### 一、引言 随着Web开发技术的不断发展,Ruby on Rails(简称Rails或ROR)作为一种高效、简洁且优雅的Web开发框架,受到了广大开发者的青睐。然而,在Windows...

    Ruby-AnsibleRubyonRails服务器Ubuntu16x

    总结起来,Ansible在Ruby on Rails服务器部署中起到关键作用,它帮助我们自动化Ubuntu 16.x上的Ruby和Rails环境搭建、Web服务器配置、数据库管理和应用部署等任务。通过使用`ansible-rails-master`中的资源,我们...

    ROR安装必备所有架包

    在Ruby on Rails(ROR)开发环境中,安装和配置正确的依赖包是至关重要的。这个压缩包包含了一系列用于ROR框架的基础组件,但不包括Ruby本身。让我们深入了解一下这些包的作用和重要性。 首先,`actionpack`是Rails...

    神经网络ror resenet模型

    在CIFAR-10上达到89%的准确率,以及在CIFAR-100上达到72%的准确率,展示了ResNet和Ror模型在处理复杂图像分类任务上的强大能力。相比于其他传统的浅层网络或早期的深度网络,这样的准确率显著提高了模型的性能,表明...

    ror中文资料

    6. **Gem生态系统**:Ruby有一个庞大的Gem包管理系统,允许开发者轻松安装和使用第三方库,如Devise(身份验证),Paperclip(文件上传)等。 7. **测试驱动开发(TDD)**:RoR鼓励TDD,提供了Rspec、Cucumber等测试...

    ror实例

    "ror实例"可能指的是在学习或实践中,通过创建一个具体的Rails应用程序来理解和掌握RoR的工作原理和最佳实践。 在Ruby on Rails中,重要知识点包括: 1. **Gemfile与Gemfile.lock**:项目中的Gemfile用于指定项目...

    RoR选题方向—源代码

    7. **Gemfile和依赖管理**:RoR使用Bundler管理外部库(称为Gems),Gemfile定义了项目的依赖,`bundle install`会安装所有必要的库。 此外,标签中提到了其他Web开发技术,如AJAX(异步JavaScript和XML),它用于...

    如何在局域网安装Redmine(原创)

    - 在Windows服务器上安装InstantRails,并确保Ruby、Rails和其他必要组件正确安装。 **步骤2:配置InstantRails** - 修改`httpd.conf`文件中的`DocumentRoot`路径,将其指向Redmine的安装目录。 - 调整`httpd.conf...

    ror

    NULL 博文链接:https://xuxiangpan888.iteye.com/blog/266696

    初探ROR

    Ruby on Rails(简称ROR)是一个基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在促进开发过程的简洁性和效率。Ruby on Rails的核心理念是“Don't Repeat Yourself”(DRY,...

    在RHEL上安裝設置ROR(nginx+passenger+ruby+rails+oracle+netzke)

    1. **Ruby**: RoR是用Ruby语言编写的,所以首先需要在RHEL上安装Ruby。可以使用`yum`包管理器安装官方仓库中的Ruby版本,但为了获取最新稳定版,推荐使用`rbenv`或`rvm`这样的版本管理器来安装和管理Ruby。 2. **...

    ROR 学习笔记系列一 Windows XP下环境安装配置(2)

    Gem用于管理和安装Ruby库,包括Rails框架。在安装Ruby后,Gem通常会自动安装。你可以在命令行输入`gem --version`来验证是否已成功安装。 为了运行Rails应用,还需要数据库支持。常见的选择是SQLite和MySQL。对于...

    ROR环境配置

    总结来说,配置ROR开发环境包括安装Ruby、Rails,创建ROR项目,以及在Eclipse中设置ROR插件和导入项目。在Eclipse中进行ROR开发,可以充分利用其丰富的功能,提升开发效率。理解并熟练运用ROR的MVC架构和相关工具,...

    RoR 培训课程PPT

    - **部署、安全性和性能优化**:讨论应用的部署流程,包括服务器选择、安全性设置以及性能调优等方面的知识。 #### 三、扩展学习资源 - **书籍推荐**:《Agile Web Development with Rails》是一本经典的RoR教程,...

Global site tag (gtag.js) - Google Analytics