`
rensanning
  • 浏览: 3513924 次
  • 性别: Icon_minigender_1
  • 来自: 大连
博客专栏
Efef1dba-f7dd-3931-8a61-8e1c76c3e39f
使用Titanium Mo...
浏览量:37478
Bbab2146-6e1d-3c50-acd6-c8bae29e307d
Cordova 3.x入门...
浏览量:604304
C08766e7-8a33-3f9b-9155-654af05c3484
常用Java开源Libra...
浏览量:678049
77063fb3-0ee7-3bfa-9c72-2a0234ebf83e
搭建 CentOS 6 服...
浏览量:87250
E40e5e76-1f3b-398e-b6a6-dc9cfbb38156
Spring Boot 入...
浏览量:399811
Abe39461-b089-344f-99fa-cdfbddea0e18
基于Spring Secu...
浏览量:69066
66a41a70-fdf0-3dc9-aa31-19b7e8b24672
MQTT入门
浏览量:90468
社区版块
存档分类
最新评论

搭建 CentOS 6 服务器(5) - Ruby/Rails环境

 
阅读更多
(1)安装Rails

1)安装需要的Package

# yum -y install gcc
# yum -y install gcc-c++
# yum -y install zlib zlib-devel
# yum -y install readline readline-devel
# yum -y install openssl openssl-devel


最好是 #yum install gcc gcc-c++ openssl* readline* ncurses* zlib* libxml* libjpeg* libpng* libxslt* libtool*

2)安装Ruby

# cd /usr/local/src
# wget ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p247.tar.gz
# tar zxvf ruby-2.0.0-p247.tar.gz
# cd ruby-2.0.0-p247
# ./configure
# make
# make install
# ruby -v


3)更新Gem

# gem update --system
# gem -v


4)安装Rails

# gem install rdoc
# gem install rails
# rails -v


5)卸载Ruby

# cd /usr/local/src/ruby-2.0.0-p247
# cat .installed.list | xargs rm


常见问题

1)问题1(NoMethodError:openssl)
引用
# gem update --system
ERROR:  Loading command: update (LoadError)
        cannot load such file -- openssl
ERROR:  While executing gem ... (NoMethodError)
    undefined method `invoke_with_build_args' for nil:NilClass

# cd /usr/local/src/ruby-2.0.0-p247/ext/openssl/
# ruby extconf.rb
# make
# make install


2)问题2(NoMethodError:zlib)
引用
# gem update --system
ERROR: Loading command: update (LoadError)
cannot load such file -- zlib
ERROR: While executing gem ... (NoMethodError)
undefined method `invoke_with_build_args' for nil:NilClass

# cd /usr/local/src/ruby-2.0.0-p247/ext/zlib/
# ruby extconf.rb
# make
# make install


(2)Apache+Passenger

1)安装Passenger

# gem install passenger

2)安装Passenger的Apache模块

# passenger-install-apache2-module


缺什么装什么
# yum install gcc-c++
# yum install curl-devel
# yum install httpd-devel
# yum install apr-devel
# yum install apr-util-devel


如果是通过源码安装的Apache,会提示以下错误:
引用
* Checking for Apache 2 development headers...
      Found: no
* Checking for Apache Portable Runtime (APR) development headers...
      Found: no
* Checking for Apache Portable Runtime Utility (APU) development headers...
      Found: no

引用
export APXS2=/usr/local/apache2/bin/apxs
export PATH=/usr/local/apache2/bin:$PATH


再次执行
# passenger-install-apache2-module


3)设置Apache

/etc/httpd/conf/httpd.conf

引用
#Passenger
LoadModule passenger_module /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.7/buildout/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.7
PassengerDefaultRuby /usr/local/bin/ruby


/etc/httpd/conf.d/rails.conf

引用
<VirtualHost *:80>
   ServerName localhost:80
   DocumentRoot /var/www/rails/testapp/public
   <Directory /var/www/rails/testapp/public>
      AllowOverride all
      Options -MultiViews
   </Directory>
</VirtualHost>


4)创建Rails工程

# cd /var/www/rails
# rails new testapp
# bundle install


# yum install sqlite-devel
# cd testapp/
# bundle install


5)创建Scaffold

# rails g scaffold friend name:string address:string
# rake db:create RAILS_ENV=production
# rake db:migrate RAILS_ENV=production
# rake assets:precompile RAILS_ENV=production


6)启动服务

# setenforce 0
# /etc/init.d/httpd restart


http://localhost/friends


(3)Nginx+Unicorn

1)安装Nginx

# rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
# yum install nginx

# /etc/init.d/nginx start



2)安装unicorn

# gem install unicorn

3)创建测试工程

省略,和以上步骤相同

4)设置Unicorn

# cd /var/www/rails/testapp/config/
# wget -O unicorn.rb https://raw.github.com/defunkt/unicorn/master/examples/unicorn.conf.rb

修改模板文件,并创建相应的文件夹
config/unicorn.rb


5)启动服务

# unicorn_rails -c config/unicorn.rb -E production -p 5000 -D
# /etc/init.d/nginx restart


http://localhost:5000/friends


6)设置Ngnix

/etc/nginx/nginx.conf


http://localhost/friends


常见问题
1)问题1(Could not find a JavaScript runtime.)

将CoffeeScript编译成JavaScript需要JavaScript的runtime,
不像Windows或Mac OS X 默认已经有Javascript引擎,Linux下需要安装。
# gem install execjs
# gem install therubyracer

实际是libv8,也可以安装nodejs。JRuby用户更多的使用therubyrhino

2)问题排查2(PassengerWatchdog: Permission denied.)
开启SELinux
# setenforce 0

3)问题排查3(SQLite3::ReadOnlyException:attempt to write a readonly database)
SQLite的数据库文件权限不足
# chmod 777 /db
# chmod 777 databasefilename
# chown user.user databasefilename

  • 大小: 54.4 KB
  • 大小: 53.9 KB
  • 大小: 25.1 KB
  • 大小: 27.4 KB
  • 大小: 40.3 KB
  • 大小: 42.6 KB
  • 大小: 25.7 KB
  • 大小: 43 KB
  • 大小: 12.1 KB
分享到:
评论

相关推荐

    CentOS7 nginx离线安装gcc/pcre-devel/openssl-devel/zlib-devel包

    下载后,上传到centos中,执行如下命令:rpm -Uvh ./*.rpm --nodeps --force

    CentOS6-Base-163.repo

    CentOS6-Base-163.repo更新源,直接放到/etc/yum.repos.d目录下,只想yum update即可将源换成163的源。

    CentOS-7-x86_64-DVD-2003镜像文件

    # CentOS-7-x86_64-DVD-1810.iso CentOS 7.6 DVD 版 4G http://mirrors.163.com/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso # CentOS-7-x86_64-Everything-1810.iso CentOS 7.6 Everything版 10G ...

    在 CentOS 8 上安装Jenkins的方法

    因为Jenkins是使用Java编写的,所以需要安装Java环境 1、安装OpenJDK。 sudo dnf install java-1.8.0-openjdk-devel 2、启用Jenkins存储库。运行以下命令下载并导入GPG密钥 sudo wget -O /etc/yum.repos.d/jenkins....

    centOS Rails3环境搭建

    # wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p174.tar.gz -C ~/source/ # tar xvzf ~/source/ruby-1.8.7-p174.tar.gz -C ../build/ # cd ../build/ruby-1.8.7-p174 # ./configure && make && make ...

    CentOS-7-i386-Everything-2009.part08.rar

    CentOS 7.9版本(CentOS-7-i386-Everything-2009)适用于i386,必须集齐9个文件才能一起解压缩使用,9个文件下载地址: CentOS-7-i386-Everything-2009.part09.rar ... CentOS-7-i386-Everything-2009.part08.rar ...

    Centos7镜像-百度网盘下载链接

    CentOS-7.2-x86_64-DVD-1511 CentOS-7.3-x86_64-DVD-1611 CentOS-7.4-x86_64-DVD-1708 CentOS-7.5-x86_64-DVD-1804 CentOS-7.6-aarch64-Everything-1810 CentOS-7.6-x86_64-DVD-1810 CentOS-7.7-x86_64-DVD-1908 ...

    CentOS7各个版本镜像下载地址.txt

    # CentOS-7-x86_64-DVD-1810.iso CentOS 7.6 DVD 版 4G http://mirrors.163.com/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso # CentOS-7-x86_64-Everything-1810.iso CentOS 7.6 Everything版 10G ...

    centos7 离线安装gcc pcre-devel openssl-devel zlib-devel

    libsepol-devel-2.5-6.el7.x86_64.rpm libverto-devel-0.2.5-4.el7.x86_64.rpm mpfr-3.1.1-4.el7.x86_64.rpm ntp-4.2.6p5-25.el7.centos.2.x86_64.rpm ntpdate-4.2.6p5-25.el7.centos.2.x86_64.rpm openssl-...

    Centos apt-get.sh

    curl https://raw.githubusercontent.com/dvershinin/apt-get-centos/master/apt-get.sh -o /usr/local/bin/apt-get 不能直接下载,这里方便大家下载

    CentOS-Base-Debuginfo-Media.repo

    CentOS-Base.repo

    CentOS-7-x86_64-Everything-1804 VMware workstation12

    CentOS-7-x86_64-Everything-1804 百度云盘资源路径!请笑纳 准备工作 1)下载VMware workstation12 百度云盘 链接:https://pan.baidu.com/s/1c6tE2cPy63y1vO1idHtAzw 提取码:duvd 2)下载CentOS7 方案一:...

    gcc/pcre-devel/openssl-devel/zlib-devel negix centos7依赖rpm

    centos7 安装negix需要的rpm 放到一个文件夹 执行 rpm -Uvh ./*.rpm --nodeps --force

    CentOS-7-aarch64-Everything-2009.part06.rar

    CentOS 7.9版本(CentOS-7-aarch64-Everything-2009)适用于ARM64 (aarch64),必须集齐9个文件才能一起解压缩使用,9个文件下载地址: CentOS-7-aarch64-Everything-2009.part09.rar ... CentOS-7-aarch64-Everything-...

    CentOS-7-aarch64-Everything-2009.part09.rar

    CentOS 7.9版本(CentOS-7-aarch64-Everything-2009)适用于ARM64 (aarch64),必须集齐9个文件才能一起解压缩使用,9个文件下载地址: CentOS-7-aarch64-Everything-2009.part09.rar ... CentOS-7-aarch64-Everything-...

    CentOS-7-i386-Everything-2009.part04.rar

    CentOS 7.9版本(CentOS-7-i386-Everything-2009)适用于i386,必须集齐9个文件才能一起解压缩使用,9个文件下载地址: CentOS-7-i386-Everything-2009.part09.rar ... CentOS-7-i386-Everything-2009.part08.rar ...

    CentOS-7-aarch64-Everything-2009.part02.rar

    CentOS 7.9版本(CentOS-7-aarch64-Everything-2009)适用于ARM64 (aarch64),必须集齐9个文件才能一起解压缩使用,9个文件下载地址: CentOS-7-aarch64-Everything-2009.part09.rar ... CentOS-7-aarch64-Everything-...

    CentOS-6.6-x86-64-bin-DVD1.iso镜像文件

    CentOS-6.6-x86_64-bin-DVD1.iso和CentOS-6.6-x86_64-bin-DVD2镜像文件百度云下载

    CentOS-7-i386-Everything-2009.part06.rar

    CentOS 7.9版本(CentOS-7-i386-Everything-2009)适用于i386,必须集齐9个文件才能一起解压缩使用,9个文件下载地址: CentOS-7-i386-Everything-2009.part09.rar ... CentOS-7-i386-Everything-2009.part08.rar ...

    CentOS-7-x86_64-LiveKDE-1810.torrent

    CentOS-7-x86_64-LiveKDE-1810

Global site tag (gtag.js) - Google Analytics