Ruby on Rails 實戰聖經阅读(二)

10 篇文章 0 订阅
4 篇文章 0 订阅


 
1.操作系统 centos5.4
2.安装ruby
yum install ruby
会安装得到 1.8.5
如果你公司用的是1.8.X就无所谓了,
拿这个学习就行了
如果你们公司用的是1.9.X,那么你需要去下载源码进行安装。【你会很悲剧的发现下载已被伟大祖国的万里长城封锁了】
我这里使用1.8.5学习就ok了
3.安装rails
yum -y install rubygem-rails.noarch
4.看看安装完毕的成果
[root@localhost projects]# ruby -v
ruby 1.8.5 (2006-08-25) [x86_64-linux]
[root@localhost projects]# rails -v
Rails 2.1.1
5.建立rails档案
mkdir projects
cd projects
rails new demo 
圣经说:
如果出現建立出來的目錄不是demo而是new,表示你的Rails版本是舊版的,請輸入rails -v檢查Rails的版本必須是3.0以上。不是的話,請回上一章末執行gem install rails安裝Rails 3
 老版本就老版本吧
不管他
6.启动服务器 ./script/server 
[root@localhost new]# ./script/server 
=> Booting WEBrick...
=> Rails 2.1.1 application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2013-07-16 09:29:45] INFO  WEBrick 1.3.1
[2013-07-16 09:29:45] INFO  ruby 1.8.5 (2006-08-25) [x86_64-linux]
[2013-07-16 09:29:45] INFO  WEBrick::HTTPServer#start: pid=17229 port=3000
8.访问一下
本地访问:
[root@localhost ~]# curl "127.0.0.1:3000"
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <title>Ruby on Rails: Welcome aboard</title>
    <style type="text/css" media="screen">
      body {
        margin: 0;
        margin-bottom: 25px;
        padding: 0;
        background-color: #f0f0f0;
        font-family: "Lucida Grande", "Bitstream Vera Sans", "Verdana";
        font-size: 13px;
        color: #333;
      }
      
      h1 {
        font-size: 28px;
        color: #000;
      }
      
      a  {color: #03c}
      a:hover {
        background-color: #03c;
        color: white;
        text-decoration: none;
      }
      
      
      #page {
        background-color: #f0f0f0;
        width: 750px;
        margin: 0;
        margin-left: auto;
        margin-right: auto;
      }
      
      #content {
        float: left;
        background-color: white;
        border: 3px solid #aaa;
        border-top: none;
        padding: 25px;
        width: 500px;
      }
      
      #sidebar {
        float: right;
        width: 175px;
      }
 
      #footer {
        clear: both;
      }
      
 
      #header, #about, #getting-started {
        padding-left: 75px;
        padding-right: 30px;
      }
 
 
      #header {
        background-image: url("images/rails.png");
        background-repeat: no-repeat;
        background-position: top left;
        height: 64px;
      }
      #header h1, #header h2 {margin: 0}
      #header h2 {
        color: #888;
        font-weight: normal;
        font-size: 16px;
      }
      
      
      #about h3 {
        margin: 0;
        margin-bottom: 10px;
        font-size: 14px;
      }
      
      #about-content {
        background-color: #ffd;
        border: 1px solid #fc0;
        margin-left: -11px;
      }
      #about-content table {
        margin-top: 10px;
        margin-bottom: 10px;
        font-size: 11px;
        border-collapse: collapse;
      }
      #about-content td {
        padding: 10px;
        padding-top: 3px;
        padding-bottom: 3px;
      }
      #about-content td.name  {color: #555}
      #about-content td.value {color: #000}
      
      #about-content.failure {
        background-color: #fcc;
        border: 1px solid #f00;
      }
      #about-content.failure p {
        margin: 0;
        padding: 10px;
      }
      
      
      #getting-started {
        border-top: 1px solid #ccc;
        margin-top: 25px;
        padding-top: 15px;
      }
      #getting-started h1 {
        margin: 0;
        font-size: 20px;
      }
      #getting-started h2 {
        margin: 0;
        font-size: 14px;
        font-weight: normal;
        color: #333;
        margin-bottom: 25px;
      }
      #getting-started ol {
        margin-left: 0;
        padding-left: 0;
      }
      #getting-started li {
        font-size: 18px;
        color: #888;
        margin-bottom: 25px;
      }
      #getting-started li h2 {
        margin: 0;
        font-weight: normal;
        font-size: 18px;
        color: #333;
      }
      #getting-started li p {
        color: #555;
        font-size: 13px;
      }
      
      
      #search {
        margin: 0;
        padding-top: 10px;
        padding-bottom: 10px;
        font-size: 11px;
      }
      #search input {
        font-size: 11px;
        margin: 2px;
      }
      #search-text {width: 170px}
      
      
      #sidebar ul {
        margin-left: 0;
        padding-left: 0;
      }
      #sidebar ul h3 {
        margin-top: 25px;
        font-size: 16px;
        padding-bottom: 10px;
        border-bottom: 1px solid #ccc;
      }
      #sidebar li {
        list-style-type: none;
      }
      #sidebar ul.links li {
        margin-bottom: 5px;
      }
      
    </style>
    <script type="text/javascript" src="javascripts/prototype.js"></script>
    <script type="text/javascript" src="javascripts/effects.js"></script>
    <script type="text/javascript">
      function about() {
        if (Element.empty('about-content')) {
          new Ajax.Updater('about-content', 'rails/info/properties', {
            method:     'get',
            onFailure:  function() {Element.classNames('about-content').add('failure')},
            onComplete: function() {new Effect.BlindDown('about-content', {duration: 0.25})}
          });
        } else {
          new Effect[Element.visible('about-content') ? 
            'BlindUp' : 'BlindDown']('about-content', {duration: 0.25});
        }
      }
      
      window.onload = function() {
        $('search-text').value = '';
        $('search').onsubmit = function() {
          $('search-text').value = 'site:rubyonrails.org ' + $F('search-text');
        }
      }
    </script>
  </head>
  <body>
    <div id="page">
      <div id="sidebar">
        <ul id="sidebar-items">
          <li>
            <form id="search" action="http://www.google.com/search" method="get">
              <input type="hidden" name="hl" value="en" />
              <input type="text" id="search-text" name="q" value="site:rubyonrails.org " />
              <input type="submit" value="Search" /> the Rails site
            </form>
          </li>
        
          <li>
            <h3>Join the community</h3>
            <ul class="links">
              <li><a href="http://www.rubyonrails.org/">Ruby on Rails</a></li>
              <li><a href="http://weblog.rubyonrails.org/">Official weblog</a></li>
              <li><a href="http://wiki.rubyonrails.org/">Wiki</a></li>
            </ul>
          </li>
          
          <li>
            <h3>Browse the documentation</h3>
            <ul class="links">
              <li><a href="http://api.rubyonrails.org/">Rails API</a></li>
              <li><a href="http://stdlib.rubyonrails.org/">Ruby standard library</a></li>
              <li><a href="http://corelib.rubyonrails.org/">Ruby core</a></li>
            </ul>
          </li>
        </ul>
      </div>
 
      <div id="content">
        <div id="header">
          <h1>Welcome aboard</h1>
          <h2>You&rsquo;re riding Ruby on Rails!</h2>
        </div>
 
        <div id="about">
          <h3><a href="rails/info/properties" οnclick="about(); return false">About your application&rsquo;s environment</a></h3>
          <div id="about-content" style="display: none"></div>
        </div>
        
        <div id="getting-started">
          <h1>Getting started</h1>
          <h2>Here&rsquo;s how to get rolling:</h2>
          
          <ol>          
            <li>
              <h2>Use <tt>script/generate</tt> to create your models and controllers</h2>
              <p>To see all available options, run it without parameters.</p>
            </li>
            
            <li>
              <h2>Set up a default route and remove or rename this file</h2>
              <p>Routes are set up in config/routes.rb.</p>
            </li>
 
            <li>
              <h2>Create your database</h2>
              <p>Run <tt>rake db:migrate</tt> to create your database. If you're not using SQLite (the default), edit <tt>config/database.yml</tt> with your username and password.</p>
            </li>
          </ol>
        </div>
      </div>
      
      <div id="footer">&nbsp;</div>
    </div>
  </body>
</html>
远程访问:有问题


判断是iptables造成
</html>[root@localhost ~]# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
RH-Firewall-1-INPUT  all  --  anywhere             anywhere            
 
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
RH-Firewall-1-INPUT  all  --  anywhere             anywhere            
 
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
 
Chain RH-Firewall-1-INPUT (2 references)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     icmp --  anywhere             anywhere            icmp any 
ACCEPT     esp  --  anywhere             anywhere            
ACCEPT     ah   --  anywhere             anywhere            
ACCEPT     udp  --  anywhere             224.0.0.251         udp dpt:mdns 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:ipp 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ipp 
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:https 
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:http 
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 
关闭防火墙
iptables -F

再次访问没问题了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值