前言:
安装环境:Linux 数据库:development:sqlite;production:mysql 全自动代理方式:Nginx + Passenger一,安装 Ruby, Rails 及相关二,安装 MySQL :
1.判断系统是否已经安装mysql:
sudo netstat -tap grep mysql
2.若已安装mysql但不能正常使用,则先卸载:sudo apt-get autoremove --purge mysql-server-5.0
sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common //非常重要
上面的其实有一些是多余的,建议还是按照顺序执行一遍 清理残留数据:dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
3.安装mysql:sudo apt-get install mysql-server mysql-client //默认用户是root,一定要输入密码
4.如果安装出错则可能是安装rails环境的时候没安装依赖的mysql开发库和头文件
sudo apt-get install libmysql-ruby libmysqlclient-dev
三,让你的项目在production下能跑起来(因为是production状态,要注意加“RAILS_ENV='production'”)(之前要能够用rails s 跑起来)
1.copy你的项目到服务器上,如果是在github上:
git clone 你的github网址
2.进入项目中,bundle
cd project
bundle install
3.用“yaml_db”把sqlite数据库转换为mysql数据库:
gem 'yaml_db' //在Gemfile中添加
bundle install
rake db:dump
4.修改config/database.yml 文件
production:
adapter: mysql
encoding: utf8
reconnect: false
database: name
pool: 5
username: root
password: password
5如果还没有创建数据库的话,创建一个数据库
6.加载数据库:
rake db:load RAILS_ENV='production'
7.让工程在服务器上跑起来
rails s -e production
四,安装Nginx + Passenger
1.由于 Passenger 需要重新编译 Nginx,如果你之前有安装 Nginx 需要卸载掉!
nginx -v //确定是否有
sudo apt-get remove nginx-common nginx-full nginx
2.用 Passenger 安装 Nginx:
sudo passenger-install-nginx-module
3.安装 Nginx 的启动脚本,以及配置开机自动启动
cd ~/
git clone git://github.com/jnstq/rails-nginx-passenger-ubuntu.git
sudo mv rails-nginx-passenger-ubuntu/nginx/nginx /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
配置 Nginx 开机自启动
sudo update-rc.d nginx defaults
五,配置 Nginx 与网站
sudo vim /opt/nginx/conf/nginx.conf //用passenger安装的nginx目录默认在这里
//-----------------------------打开后可看到------------------
user jason; //修改成你的系统帐号名
worker_processes 8; //修改成和你 CPU 核数一样
pid /var/run/nginx.pid;
http {
include mime.types;
default_type application/octet-stream;
client_max_body_size 50m;
sendfile on;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
//---------------------- ------------ 重点修改内容 --------
server {
//此处用于防止其他的域名绑定到你的网站上面
listen 80 default;
return 403;
}
server {
listen 80;
server_name you.host.name; //请替换成你网站的域名
rails_env production;
root /home/jason/www/gitlab/public;
passenger_enabled on;
location ~ ^(/assets) {
access_log off;
//设置 assets 下面的浏览器缓存时间为最大值(由于 Rails Assets Pipline 的文件名是根据文件修改产生的 MD5 digest 文件名,所以此处可以放心开启)
expires max;
}
}
}
重启 Nginx
sudo /etc/init.d/nginx start //还可以用restart
参考:
nginx:http://blog.csdn.net/tuoxz/article/details/20370083
数据库:http://stackoverflow.com/questions/1670154/convert-a-ruby-on-rails-app-from-sqlite-to-mysql
分享到:
相关推荐
ruby on rails社区网站开发源码
《Ruby on Rails Tutorial》中文版(原书第2版,涵盖 Rails 4) Ruby 是一门很美的计算机语言,其设计原则就是“让编程人员快乐”。David Heinemeier Hansson 就是看重了这一点,才在开发 Rails 框架时选择了 Ruby...
Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 Ubuntu系统ruby on rails安装 ...
Ruby on Rails Guides v2 - Ruby on Rails 4.2.5
Ruby On Rails中文教材(PDF)
Ruby on Rails Web开发学习实录 内容简介: 在目前的主流web开发技术中,基于ruby语言的rails框架是做网站开发速度最快的工具。它可以达到j2ee框架开发速度的5~10倍,并且代码量也非常少。另外由于代码量的大幅度...
ruby on rails对mongodb的操作ruby on rails对mongodb的操作ruby on rails对mongodb的操作ruby on rails对mongodb的操作
本书的目标是成为对“如果想学习使用 Ruby on Rails 进行 Web 开发,我应该从哪儿开始?”这一问题的最好答案。学习完本书的内容之后,你将具备使用 Rails 进行开发和部署 Web 程序的技能。同时你还能够通过一些进阶...
Ruby On Rails 官方教程,这本书讲解如何使用 Ruby on Rails 框架开发应用,以及如何把应用部署到生成环境。本书使用 Rails 默认的开发工具栈开发了一个完整的社交应用(类似 Twitter)。读完本书后你将掌握如何使用...
本书教您如何使用Ruby on Rails开发和部署真正的,具有工业实力的Web应用程序,Ruby on Rails是为诸如Twitter,Hulu,GitHub和Yellow Pages等顶级网站提供支持的开源Web框架。
ruby on rails 教程源码,配合原书使用
ruby on rails最新版 这是本人精心收集的重要软件
ruby on rails 开发环境包(ruby1.8.7,rails2.2.3)
Ruby on Rails中文指南
该资源包包括在Linux安装Ruby on Rails所需的包,以及安装步骤文档
Ruby On Rails 框架自它提出之日起就受到广泛关注,在“不要重复自己”,“约定优于配置”等思想的指导下,Rails 带给 Web 开发者的是极高的开发效率。 ActiveRecord 的灵活让你再也不用配置繁琐的 Hibernate 即可...
ruby on rails api方便查阅
最新Ruby on Rails中文版介绍,欢迎大家共同学习此最新的技术!随着Ruby和Rails版本的不断升级,这些知识也在不断的更新,谢谢的支持!
基于ruby on rails开发示例源码