ubuntu+apache2+rails

apache服务器安装以及使用passenger插件部署rails应用,基于ubuntu 12.04 LTS 小例子可以部署在rails自带的WEBrick上,逐渐往后走还得上Apache。 安装apache服务器 命令是sudo apt-get install apache2 安装passenger插件 安装完毕还不能立刻用,因为想运行rails应用的话,还要为apache服务器安装插件passenger。 passenger是一个gem包,安装命令是gem install passeng 阅读详情

在Ubuntu上部署Rails(Apache mod_proxy mongrel_cluster)

最近需要把Rails的程序发布出去,在发布的过程中遇到了一些问题,虽然都用Google解决了,不过也注意到,在Ubuntu下部署Rails和其它Linux环境有所不同,为了以后少走弯路,把最近部署的过程记了下来。
以下环境为7.04
一:以Server的形式安装Ubuntu,安装完成后,设置IP、软件安装源。(这点就不说了,论坛有很多教程)
二:安装必须的软件
1.安装OpenSSH,方便远程管理:


sudo apt-get install openssh-client openssh-server


2.安装Screen,方便远程连接后运行后台程序 (参见: linux 技巧:使用 screen 管理你的远程会话 )


sudo apt-get install screen


3.安装Mysql 5.0


sudo apt-get install mysql-server-5.0


4.安装Apache


sudo apt-get install apache2


安装完成后,在别的机器上打开FireFox输入http://服务器的IP地址 /apache2-default/ 如果屏幕显示It Works! 则表示安装成功
5.安装版本控制系统,方便在服务器上签出开发机器上的Rails程序,这里安装的是SVN(可选安装)


sudo apt-get install subversion


6.安装基本的编译环境,在后面安装mongrel时要用到


sudo apt-get install build-essential


7.安装ruby


sudo apt-get install ruby1.8 ruby1.8-dev ri1.8 rdoc1.8 irb1.8 libtermios-ruby1.8 libmysql-ruby1.8


注: Rails 升级到2.0.1后,还需要安装libopenssl-ruby1.8, 否则Mongrel启动时会报错


sudo apt-get install libopenssl-ruby1.8



然后:


      cd /usr/bin/
      sudo cp ruby1.8 ruby
      sudo cp irb1.8 irb  # 这是为了能够正常启动rails的Control


8.安装rubygems
由于源里的版本比较低,可以到

http://rubyforge.org/frs/?group_id=126&release_id=11889

去下载最新版本;
下载tgz格式的,解压后,进入解压目录,然后运行:


sudo ruby ./setup.rb


9.安装Rails、mongrel、termios程序库


      sudo gem update
      sudo gem install --include-dependencies rake
      sudo gem install --include-dependencies rails
      sudo gem install --include-dependencies termios
      sudo gem install --include-dependencies mongrel
      sudo gem install --include-dependencies mongrel_cluster



安装mongrel时,会看到如下选择:

Select which gem to install for your platform (i486-linux)
1. mongrel 1.0.1 (mswin32)
2. mongrel 1.0.1 (ruby)
3. mongrel 1.0 (mswin32)
4. mongrel 1.0 (ruby)
5. Skip this gem
6. Cancel installation
> 2
选第二个,mongrel1.0.1好像修复了一个漏洞,然后还会有另一个选择:

Select which gem to install for your platform (i486-linux)
1. fastthread 1.0 (ruby)
2. fastthread 1.0 (mswin32)
3. fastthread 0.6.4.1 (mswin32)
4. fastthread 0.6.4.1 (ruby)
5. Skip this gem
6. Cancel installation
>1
选第一个

以上,部署的必要软件基本上都装齐了

注: 在710里用Gem安装Rails、mongrel等软件时,有提示安装成功, 但在命令行下运行却提示找不到命令,这是因为Gem没有把命令链接到/usr/bin/ , 这时可以手动把/var/lib/gems/1.8/bin/下的文件cp到/usr/bin/。


cp -i /var/lib/gems/1.8/bin/* /usr/bin/


但这样以后升级软件的时候会比较麻烦,要重新cp一份,也可以做一个符号链接如: ln -s /var/lib/gems/1.8/bin/rails /usr/bin/rails
gem安装软件的目录可以通过命令 gem install --help 查看到。


------------------------ 以下是软件的设置部分 --------------------------------

三:软件设置
1.mysql 的设置
参考了论坛里的这篇文章:http://forum.ubuntu.org.cn/viewtopic.php?t=1320
在终端运行:


mysql -u root

mysql>delete from mysql.db;   <- 清空db表中默认对test数据库的权限设置
mysql>delete from mysql.user where not(host="localhost") and user="root";   <- 清除多余的root用户
mysql>update mysql.user set user="ubuntu" where user="root";  <- 为了安全,将默认的root用户名更改为ubuntu。
mysql>update mysql.user set Password=PASSWORD('ubuntu_cn') where user='ubuntu'; <- 给ubuntu用户加上密码"ubuntu_cn"
mysql>flush privileges;
mysql>exit



清除之前对数据库的操作日志,这样别人就不知道刚刚改的密码啦


rm ~/.mysql_history
touch ~/.mysql_history



2.Mongrel_cluster配置
Mongre_cluster的设置比较简单,在你的Rails应用的根目录下运行,以下假设Rails的应用程序目录为/home/ubuntu/railsapp/demo/


mongrel_rails cluster::configure -e production -p 8000 -a 127.0.0.1 -N 2 -c /home/ubuntu/railsapp/demo/



解释一下:
-e 指定运行环境,有production(生产)、development(开发)、test(测试)三个选项。
-p 指定监听端口
-a 127.0.0.1 指定Mongrel在localhost下监听
-N 2 启动两个Mongrel进程,端口从8000~8001

运行后,会在应用程序目录 config/mongrel_cluster.yml, 以后有什么变化,直接修改这个文件就可以了。
在终端下输入以下命令启动Mongrel:

 

mongrel_rails cluster::start


要停止则输入:


mongrel_rails cluster::stop



2.Apache 的设置
首先要启动mod_proxy模块.


cd /etc/apache2/mods-enabled/
sudo ln -s ../mods-available/proxy_balancer.load proxy_balancer.load
sudo ln -s ../mods-available/proxy_http.load proxy_http.load
sudo ln -s ../mods-available/proxy.load proxy.load
sudo ln -s ../mods-available/proxy.conf proxy.conf



接着要修改一下proxy.conf文件


sudo vim /etc/apache2/mods-available/proxy.conf



大概是在11行:


#Allow from .example.com


改为


Allow from all



修改 /etc/apache2/apache2.conf 文件(默认是在最后一行):


Include /etc/apache2/sites-enabled/


改为:


#Include /etc/apache2/sites-enabled/


然后在/etc/apache2/httpd.conf里添加以下部分:


<Proxy balancer://mongrel>
  BalancerMember http://127.0.0.1:8000
  BalancerMember http://127.0.0.1:8001
</Proxy>

<VirtualHost *:80>
  ProxyPass / balancer://mongrel/
  ProxyPassReverse / balancer://mongrel/
</VirtualHost>



重启Apache以使设置生效:


sudo /etc/init.d/apache2 restart



在Firefox里输入http://服务器的IP地址 / 进行测试,检查Rails程序是否能够正常运行。

这样一个Rails的生产环境就配置好了。 :D

搭建Apache + Mongrel + Rails + Linux 服务器架构 Rails:Rails是一个使用Ruby编写的Web应用程序框架,它提供了许多工具和库,简化了Web应用程序的开发过程。现在,我们可以开始在Mongrel服务器上运行我们的Rails应用程序。在本文中,我们将详细介绍如何搭建一个使用Apache、Mongrel、Rails和Linux的服务器架构。在Web浏览器中输入服务器的IP地址,应该能够看到您的Rails应用程序的欢迎页面。如果一切正常,您可以继续开发和部署您的Rails应用程序,享受使用Apache、Mongrel和Linux服务器架构带来的好处。 阅读详情

相关推荐

广工计组f4b 8位12指令微程序CPU设计实验报告(内含可通过代码以及波形图)

实验目的:模型机是计算机的缩细模型,通过它可以理解计算机整机的结构和功能,理解CPU,存储器,中断控制器,接口的结构及实现逻辑和各部件之前的接口关系。本实验是设计一个8位模型计算机。:一条机器指令可以分解成一个微操作序列,这些微操作是计算机最基本的,不可再细分的操作。:在微程序控制的计算机中。将控制部件向执行部件发出的各种控制命令成为微命令,它是构成控制序列的最小单位。微命令和微操作是一一对应的。微命令是微操作的控制信号,微操作微命令的执行过程。2.:微指令是若干微命令的集合。

weixin_63692154的博客 4705

apache+mongrel+rails+linux轻松架设服务器

 1.首先在服务器上搭建RAILS环境并装mongrel 和apachelinux下ROR的配置 (ubuntu) http://blog.youkuaiyun.com/kevinye/archive/2006/11/30/1423003.aspx #install rubyapt-get install irb libdbm-ruby1.8 libgdbm-ruby1.8 libmysql-ruby1.

Ruby On Rails学习日志 2154

从医疗成像到工业检测:CMOS图像传感器NIR技术的最新应用案例解析

本文深入解析了CMOS图像传感器NIR技术在医疗成像和工业检测中的最新应用案例。通过提升量子效率至70%,NIR技术实现了血管可视化、材料缺陷检测等突破性进展,显著提高了医疗诊断精度和工业质检效率。文章还探讨了系统集成关键考量和前沿发展趋势。

weixin_30879169的博客 90

如何在 Ubuntu 14.04 上使用 Passenger 和 Apache 部署 Rails 应用

在本教程中,我们将演示如何将 Phusion Passenger 安装为您的 Rails 友好型 Web 服务器,它易于安装、配置和维护。我们将把它集成到 Ubuntu 14.04 上的 Apache 中。在本教程结束时,我们将在我们的 Droplet 上部署一个测试的 Rails 应用程序。如果您更喜欢 Nginx 而不是 Apache,请参考以下链接,了解如何在 Ubuntu 14.04 上使用 Passenger 和 Nginx 部署 Rails 应用程序。

rubys007的博客 1307

基于大模型的急性重症胰腺炎全流程预测与诊疗方案研究

本研究构建了基于大模型的急性重症胰腺炎(SAP)全流程预测与诊疗系统,实现了从术前风险评估到术后康复管理的精准诊疗闭环。通过整合临床信息、实验室检查和影像学等多源数据,模型在测试集上预测准确率达X%,AUC为X,显著优于传统评分系统。研究创新性地将预测结果应用于手术方案制定、麻醉决策、并发症防控及个性化护理,形成智能化诊疗方案。验证结果显示模型具有良好的稳定性和临床适用性,同时配套的健康教育体系提升了患者自我管理能力。尽管存在样本局限性和模型可解释性等不足,该研究为SAP的精准诊疗提供了新范式,未来可通过扩

嵌入式毕设/课设资料清单(速查手册·文档模板·题库,持续更新)→ 见最新文章 1116

从零开始学华为设备:手把手教你用ENSP搭建OSPF实验环境(附拓扑文件)

本文详细介绍了如何使用华为ENSP模拟器从零开始搭建OSPF多区域网络实验环境,包括拓扑规划、设备配置、OSPF参数优化及故障排查技巧。通过实战案例和配置示例,帮助网络工程师快速掌握华为设备的OSPF协议配置,提升企业网络环境中的实战能力。

weixin_29305313的博客 286

apache+passenger 实现rails应用的部署

apache+passenger部署rails应用 (1)安装apache: sudo apt-get install apache2(2)安装passenger    $ sudo gem install passenger    $ passenger-install-apache2-module    安装到最後时,会出现如下的3条语句:    LoadModule passenger_...

binku 336

从零拆解快手Web端__NS_hxfalcon:JS逆向签名参数定位与复现

在JS逆向与前端反爬攻防中,签名参数总是绕不开的核心环节。无论是接口加密还是请求签名,其本质都是通过在客户端收集环境信息、时间戳与业务参数,经特定算法计算后生成用于服务端校验的动态令牌。理解这类参数的生成原理,不仅能提升逆向分析效率,也能帮助前端开发者更好地设计自身接口防护方案。在实际工程中,面对经Webpack打包且高度混淆的代码,直接全局搜索参数名往往难以奏效,需要结合请求抓包、调用栈跟踪、环境适配等方法逐步定位。此类签名参数广泛存在于现代Web应用的GraphQL或REST接口中,是接口数据安全的重要

weixin_29474431的博客 336

Debian Rails3 Apache2 Passenger 部署

1. 编译安装apache2 2. 安装passenger sudo gem install passenger sudo passenger-install-apache2-module 根据提示安装缺少的依赖包(不同机器可能不同,看提示) sudo ap

Talents come from diligence 1389

时间序列预测 — 预测数据集(负荷、风电、光伏、销量等)

GEFCom2014 “负荷预测数据”为竞赛的公共数据集,GEFCom2014 的负荷预测轨迹为概率负荷预测。

几度春风里的博客 2万+

如何从 VMware 官网下载最新版本的 VMware Workstation

如何从 VMware 官网下载 VMware Workstation

XiaoqiangClub的博客 5901

ubuntu上快速配置fcgi+apache2.2+rails

ubuntu有很多方便的包可以安装,实际上配置这些非常方便。 前提:已经装好ruby and rails fcgi的安装: 在新立得里,安装 libfcgi-dev + libfcgi0c2,这是编译需要的。 使用gem安装: ruby 代码 sudo gem install fcgi   安装好后可以配置apache 2.2了。 安装apache 2.2 在新立得里,...

棋牌游戏 263

PTC Creo软件二次开发:使用C++进行Creo二次开发实战

C++是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。由Bjarne Stroustrup在贝尔实验室开发,最初作为C语言的增强版出现,后来发展成为一种独立的语言。C++不仅保留了C语言的高效性和灵活性,还引入了类、模板、命名空间等高级特性,使其成为开发复杂系统和软件的理想选择。

kkchenjj的博客 4042

ubuntu10.10 下部署 apache2 + fastcgi + rack/sinatra/rails3

nginx + passenger用了蛮久的,突然对fastcgi感兴趣,因为有robbin这篇blog在Linux平台上安装和配置Ruby on Rails详解 [url]http://robbin.iteye.com/blog/43228[/url] 以及rails部署性能比较的文章。 但是rails3在官网上已经没有关于fastcgi的配置建议了,同时rails3也没有dispat...

nirvana0083的博客 250

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

ubuntu 14.04下的rails开发环境

1、首先是安装RVM, $ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 $ curl -sSL https://get.rvm.io | bash -s stable $ source ~/.rvm/scripts/rvm echo "ruby_u...

weixin_30522095的博客 100

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Apache + passenger

[url]http://www.railsgarden.com/2008/04/12/configurating-passenger-mod_rails-on-slicehost-with-ubuntu-710/[/url] install passenger [code="ruby"] sudo gem install pog passenger sudo passenger-ins...

RobinWu 217

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

ubuntu下apache+passenger+php+mysql

一.安装apache2+php+mysql sudo apt-get install mysql-server mysql-client sudo apt-get install libmysql-ruby libmysqlclient15-dev sudo apt-get install apache2 #/var/www #/etc/apache2/apache2.conf ...

iteye_2629的博客 219

ubuntu 11.04 安装及配置rails 开发 环境

1.install openssh-server [code="java"]http://aofengblog.blog.163.com/blog/static/6317021201111415112526/ sudo apt-get install openssh-server sudo /etc/init.d/ssh start sudo /etc/init.d/ssh stop s...

Piao.It 193

Ubuntu 14.04 Server 部署Redmine 手记

1、Apache2及依赖模块安装 sudo apt-get install apache2 libapache2-mod-passenger 2、MySQL安装 sudo apt-get install mysql-server mysql-client 3、Redmine数据库建立 mysql> create database redmine character set utf8;

yzlworld的专栏 1447

Ubuntu 14.04安装redmine

公司要安装项目管理系统,采用redmine,新来的我就来做这个小小的任务了,中途也出过几次问题,搭建redmine,他的依赖包很多,所以我建议用apt装,下面开始吧。首先升级一下源apt-get update更新完成PS:(如果图省事,可以选择LAMP套件安装,此处指mysql和apache此处不用套件安装了 )安装apache2和apache2的一个模块apt-get in...

weixin_34375054的博客 192

ubuntu11.04上ruby1.9.2 rals3 mysql 开发环境配置

ubuntu11.04上配置: ruby1.9.2 rails3.0.7 xampp1.7.4(内含apache 和 mysql) 开发环境。 ruby on rails的安装转自链接:[url]http://www.hansay.com/episodes/installing-rails-3-on-ubuntu-10-04-lucid-lynx-with-rvm[/url] 首先安装cu...

zzhttzzh的专栏 221

ubuntu11.04上ruby1.9.2 rals3 mysql 开发环境配置

ubuntu11.04上配置: ruby1.9.2  rails3.0.7  xampp1.7.4(内含apache 和 mysql) 开发环境。 ruby on rails的安装转自链接:http://www.hansay.com/episodes/installing-rails-3-on-ubuntu-10-04-lucid-lynx-with-rvm 首先安装curl: 

anderberte 627

ROR31 体验

最近玩ROR了,以前接触过perl/PHP,感觉web前端的编程是需要很系统的设计,规划,编码和测试,尤其是当java大行其道的年代,但有了rails, 加上ruby, rest/dry, 这些使个人开发大型网络系统前端成为可能,即使包括后台的数据库,云计算,也不是完全没有机会.好,开始吧... #release notes http://railsapps.github.com/inst...

iteye_9122的博客 211

Redmine部署到Windows Azure

  有幸,今天可以尝试将Redmine部署到Windows Azure中,记下点滴,方便大家查阅 步骤一:Windows Azure中安装Ubuntu VM 遇到的问题,创建VM时会提示云服务、云存储订阅上限问题,此类问题是创建VM时默认会新建云服务和云存储,所以选择下已存在的云服务。如下图所示: 步骤二:配置打开SSH 22 和Remote Desktop 3389端口,如下...

dhvyl82208的专栏 195

日常记载--redmine的安装

redmine是用Ruby开发的基于web的项目管理软件,是用ROR框架开发的一套跨平台项目管理系统。 一:使用bitnami一键部署linux系统 1.下载地址:https://bitnami.com/stack/redmine 2.将./bitnami-redmine-4.0.4-5-linux-x64-installer.run导入ubuntu 3.#chmod 777 bitnami-re...

xbAimor的博客 480

Web流行框架一决高下:"快"不一定"好"

使用Web开发框架,可以帮助开发者提高Web应用程序、Web服务和网站等Web开发工作的质量和效率。本文主要是对当今流行的Web框架进行比较,通过对比,你将会看到我们经常使用的在F/OSS(开放源代码软件)下Web流行框架的测试结果。   测试的结果有价值吗?   或许没有价值,当涉及到代码,也许就能凸显出它的价值所在。我尽可能的试着将每一个测试做到公平、准确。或许考虑测...

weixin_33695450的博客 82
上一篇: 屏蔽lephone在模拟器上的烦人Exception
下一篇: RMaigic 一系列错误解决
gnuser
博客等级 码龄20年 35粉丝 141原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值