<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Cooper's blog: Category Typo</title>
    <link>http://cooper.ezlibrary.com/articles/category/typo</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>&#1055;&#1088;&#1086;&#1075;&#1088;&#1072;&#1084;&#1084;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1080;&#1077;, &#1073;&#1083;&#1086;&#1075;&#1075;&#1080;&#1085;&#1075;, online money making: &#1089;&#1086;&#1073;&#1099;&#1090;&#1080;&#1103;, &#1092;&#1072;&#1082;&#1090;&#1099;, &#1083;&#1080;&#1095;&#1085;&#1099;&#1081; &#1086;&#1087;&#1099;&#1090;</description>
    <item>
      <title>SAPE ON RAILS. &#1048;&#1085;&#1090;&#1077;&#1075;&#1088;&#1072;&#1094;&#1080;&#1103; PHP-&#1082;&#1086;&#1076;&#1072; SAPE.RU &#1074; Ruby on Rails &#1087;&#1088;&#1080;&#1083;&#1086;&#1078;&#1077;&#1085;&#1080;&#1077;.</title>
      <description>&lt;p&gt;&#1053;&#1072;&#1074;&#1077;&#1088;&#1085;&#1103;&#1082;&#1072; &#1091;&#1078;&#1077; &#1084;&#1085;&#1086;&#1075;&#1080;&#1077; &#1089;&#1095;&#1072;&#1089;&#1090;&#1083;&#1080;&#1074;&#1099;&#1077; &#1086;&#1073;&#1083;&#1072;&#1076;&#1072;&#1090;&#1077;&#1083;&#1080; &#1089;&#1072;&#1081;&#1090;&#1086;&#1074;, &#1088;&#1072;&#1079;&#1088;&#1072;&#1073;&#1086;&#1090;&#1072;&#1085;&#1085;&#1099;&#1093; &#1085;&#1072; &lt;em&gt;php&lt;/em&gt; &#1080;&#1083;&#1080; &lt;em&gt;html&lt;/em&gt;, &#1091;&#1089;&#1090;&#1072;&#1085;&#1086;&#1074;&#1080;&#1083;&#1080; &#1080; &#1089; &#1091;&#1076;&#1086;&#1074;&#1086;&#1083;&#1100;&#1089;&#1090;&#1074;&#1080;&#1077;&#1084; &#1087;&#1086;&#1083;&#1100;&#1079;&#1091;&#1102;&#1090;&#1089;&#1103; &#1089;&#1080;&#1089;&#1090;&#1077;&#1084;&#1086;&#1081; &#1082;&#1091;&#1087;&#1083;&#1080;-&#1087;&#1088;&#1086;&#1076;&#1072;&#1078;&#1080; &#1089;&#1089;&#1099;&#1083;&#1086;&#1082; &lt;strong&gt;sape.ru&lt;/strong&gt;. &#1055;&#1086;&#1089;&#1082;&#1086;&#1083;&#1100;&#1082;&#1091; &#1084;&#1086;&#1081; &#1073;&#1083;&#1086;&#1075; &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1091;&#1077;&#1090; &lt;strong&gt;Typo&lt;/strong&gt; &#1076;&#1074;&#1080;&#1078;&#1086;&#1082;, &#1085;&#1072;&#1087;&#1080;&#1089;&#1072;&#1085;&#1085;&#1099;&#1081; &#1085;&#1072; &lt;strong&gt;Ruby on Rails&lt;/strong&gt;, &#1090;&#1086;  &#1082;&#1086;&#1085;&#1082;&#1088;&#1077;&#1090;&#1085;&#1099;&#1093; &#1080;&#1085;&#1089;&#1090;&#1088;&#1091;&#1082;&#1094;&#1080;&#1081; &#1087;&#1086; &#1088;&#1072;&#1079;&#1084;&#1077;&#1097;&#1077;&#1085;&#1080;&#1102; &lt;em&gt;sape&lt;/em&gt;-&#1082;&#1086;&#1076;&#1072; &#1084;&#1085;&#1077; &#1085;&#1072;&#1081;&#1090;&#1080; &#1085;&#1077; &#1091;&#1076;&#1072;&#1083;&#1086;&#1089;&#1100; &#1085;&#1080; &#1085;&#1072; &#1092;&#1086;&#1088;&#1091;&#1084;&#1077; &lt;strong&gt;sape.ru&lt;/strong&gt;, &#1085;&#1080; &#1074; &#1048;&#1085;&#1090;&#1077;&#1088;&#1085;&#1077;&#1090;. &#1055;&#1086;&#1101;&#1090;&#1086;&#1084;&#1091; &#1087;&#1088;&#1080;&#1096;&#1083;&#1086;&#1089;&#1100; &#1087;&#1088;&#1086;&#1074;&#1077;&#1089;&#1090;&#1080; &#1085;&#1077;&#1073;&#1086;&#1083;&#1100;&#1096;&#1086;&#1077; &#1080;&#1089;&#1089;&#1083;&#1077;&#1076;&#1086;&#1074;&#1072;&#1085;&#1080;&#1077; &#1087;&#1086; &#1089;&#1087;&#1086;&#1089;&#1086;&#1073;&#1072;&#1084; &#1080;&#1085;&#1090;&#1077;&#1075;&#1088;&#1072;&#1094;&#1080;&#1080; &lt;strong&gt;Rails&lt;/strong&gt; &#1080; &lt;strong&gt;PHP&lt;/strong&gt; &#1080; &#1079;&#1072;&#1090;&#1077;&#1084; &#1088;&#1077;&#1072;&#1083;&#1080;&#1079;&#1086;&#1074;&#1072;&#1090;&#1100; &#1085;&#1072; &#1086;&#1089;&#1085;&#1086;&#1074;&#1077; &#1089;&#1086;&#1073;&#1088;&#1072;&#1085;&#1085;&#1086;&#1075;&#1086; &#1084;&#1072;&#1090;&#1077;&#1088;&#1080;&#1072;&#1083;&#1072; &lt;strong&gt;Typo sidebar plug-in&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;&#1055;&#1077;&#1088;&#1074;&#1086;&#1077;, &#1095;&#1090;&#1086; &#1103; &#1089;&#1076;&#1077;&#1083;&#1072;&#1083;, &#1101;&#1090;&#1086; &#1074;&#1099;&#1085;&#1077;&#1089; &lt;em&gt;php&lt;/em&gt;-&#1082;&#1086;&#1076; &#1076;&#1083;&#1103; &#1086;&#1090;&#1086;&#1073;&#1088;&#1072;&#1078;&#1077;&#1085;&#1080;&#1103; &#1089;&#1089;&#1099;&#1083;&#1086;&#1082;, &#1074; &#1086;&#1090;&#1076;&#1077;&#1083;&#1100;&#1085;&#1099;&#1081; &#1092;&#1072;&#1081;&#1083; &#1089; &#1080;&#1084;&#1077;&#1085;&#1077;&#1084; &lt;em&gt;sape1.php&lt;/em&gt;. &#1069;&#1090;&#1086;&#1090; &#1092;&#1072;&#1081;&#1083; &#1073;&#1099;&#1083; &#1089;&#1086;&#1093;&#1088;&#1072;&#1085;&#1077;&#1085; &#1074; &#1076;&#1080;&#1088;&#1077;&#1082;&#1090;&#1086;&#1088;&#1080;&#1080; &lt;em&gt;/var/www/websites/mysite/public&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&#1050;&#1072;&#1082; &#1087;&#1086;&#1082;&#1072;&#1079;&#1072;&#1083;&#1080; &#1087;&#1077;&#1088;&#1074;&#1099;&#1077; &#1101;&#1082;&#1089;&#1087;&#1077;&#1088;&#1080;&#1084;&#1077;&#1085;&#1090;&#1099; &#1089; &lt;em&gt;sape&lt;/em&gt;, &#1073;&#1086;&#1083;&#1100;&#1096;&#1072;&#1103; &#1095;&#1072;&#1089;&#1090;&#1100; &#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084; &#1089; &#1086;&#1090;&#1086;&#1073;&#1088;&#1072;&#1078;&#1077;&#1085;&#1080;&#1077;&#1084; &#1089;&#1089;&#1099;&#1083;&#1086;&#1082; &#1087;&#1088;&#1086;&#1076;&#1072;&#1074;&#1094;&#1086;&#1074; &#1073;&#1099;&#1083;&#1072; &#1089;&#1074;&#1103;&#1079;&#1072;&#1085;&#1072; &#1089; &#1090;&#1077;&#1084;, &#1095;&#1090;&#1086; &#1085;&#1077;&#1074;&#1086;&#1079;&#1084;&#1086;&#1078;&#1085;&#1086; &#1086;&#1087;&#1088;&#1077;&#1076;&#1077;&#1083;&#1080;&#1090;&#1100; &#1074;&#1085;&#1091;&#1090;&#1088;&#1080; &lt;em&gt;php&lt;/em&gt;-&#1089;&#1082;&#1088;&#1080;&#1087;&#1090;&#1072; &#1090;&#1077;&#1082;&#1091;&#1097;&#1091;&#1102; &#1089;&#1090;&#1088;&#1072;&#1085;&#1080;&#1094;&#1091; &#1089;&#1072;&#1081;&#1090;&#1072; &#1080;&#1083;&#1080; &#1076;&#1086;&#1084;&#1077;&#1085;&#1085;&#1086;&#1077; &#1080;&#1084;&#1103;. &#1055;&#1086;&#1101;&#1090;&#1086;&#1084;&#1091; &#1076;&#1072;&#1083;&#1077;&#1077; &#1074; &#1101;&#1090;&#1086;&#1084; &#1089;&#1082;&#1088;&#1080;&#1087;&#1090;&#1077; &#1103;&#1074;&#1085;&#1086; &#1073;&#1099;&#1083;&#1080; &#1087;&#1088;&#1086;&#1087;&#1080;&#1089;&#1072;&#1085;&#1099; &#1087;&#1072;&#1088;&#1072;&#1084;&#1077;&#1090;&#1088;&#1099;, &#1074; &#1086;&#1073;&#1099;&#1095;&#1085;&#1099;&#1093; &#1091;&#1089;&#1083;&#1086;&#1074;&#1080;&#1103;&#1093; &#1087;&#1086;&#1083;&#1091;&#1095;&#1072;&#1077;&#1084;&#1099;&#1077; &#1080;&#1079; &#1082;&#1086;&#1085;&#1090;&#1077;&#1082;&#1089;&#1090;&#1072; web-&#1089;&#1077;&#1088;&#1074;&#1077;&#1088;&#1072;: &lt;em&gt;&amp;#8216;request_uri&#8217;&lt;/em&gt;, &lt;em&gt;&#8217;host&#8217;&lt;/em&gt;.  &#1040; &#1090;&#1072;&#1082;&#1078;&#1077; &#1080;&#1079;&#1084;&#1077;&#1085;&#1105;&#1085; &#1087;&#1072;&#1088;&#1072;&#1084;&#1077;&#1090;&#1088; &lt;em&gt;&#8217;charset&#8217;&lt;/em&gt; &#1085;&#1072; UTF-8 &#1074; &#1089;&#1086;&#1086;&#1090;&#1074;&#1077;&#1090;&#1089;&#1090;&#1074;&#1080;&#1080; &#1089; &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1091;&#1077;&#1084;&#1086;&#1081; &#1082;&#1086;&#1076;&#1080;&#1088;&#1086;&#1074;&#1082;&#1086;&#1081; &#1089;&#1090;&#1088;&#1072;&#1085;&#1080;&#1094; &#1084;&#1086;&#1077;&#1075;&#1086; &#1089;&#1072;&#1081;&#1090;&#1072;. &#1047;&#1085;&#1072;&#1095;&#1077;&#1085;&#1080;&#1077; &lt;em&gt;&amp;#8216;request_uri&#8217;&lt;/em&gt; &#1076;&#1086;&#1087;&#1086;&#1083;&#1085;&#1080;&#1090;&#1077;&#1083;&#1100;&#1085;&#1086; &#1087;&#1088;&#1077;&#1086;&#1073;&#1088;&#1072;&#1079;&#1086;&#1074;&#1099;&#1074;&#1072;&#1083;&#1086;&#1089;&#1100; &#1092;&#1091;&#1085;&#1082;&#1094;&#1080;&#1077;&#1081; &lt;em&gt;urlencode()&lt;/em&gt; &#1076;&#1083;&#1103; &#1082;&#1086;&#1088;&#1088;&#1077;&#1082;&#1090;&#1085;&#1086;&#1081; &#1080;&#1085;&#1090;&#1077;&#1088;&#1087;&#1088;&#1077;&#1090;&#1072;&#1094;&#1080;&#1080; &#1089;&#1080;&#1084;&#1074;&#1086;&#1083;&#1086;&#1074; &#1082;&#1080;&#1088;&#1080;&#1083;&#1083;&#1080;&#1094;&#1099; &#1074; URL. &lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;
&amp;lt;?php
    define('_SAPE_USER', '999999999999999999999999999999999');
    require_once('/var/www/websites/mysite/'._SAPE_USER.'/sape.php');
    $o['request_uri'] = $_GET['uri'];
    $o['request_uri'] = str_replace('%2F', '/', urlencode($o['request_uri']) );
    $o['host']    = 'cooper.ezlibrary.com';
    $o['charset'] = 'UTF-8';
    $sape = new SAPE_client($o);
    unset($o);
    echo $sape-&amp;gt;return_links();
?&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#1055;&#1086;&#1089;&#1083;&#1077; &#1080;&#1079;&#1084;&#1077;&#1085;&#1077;&#1085;&#1080;&#1081; &#1074; &lt;em&gt;php&lt;/em&gt;-&#1082;&#1086;&#1076;&#1077; &#1086;&#1089;&#1090;&#1072;&#1077;&#1090;&#1089;&#1103; &#1089;&#1086;&#1079;&#1076;&#1072;&#1090;&#1100; &lt;a href="/files/sape_sidebar.zip"&gt;Sape sidebar plugin&lt;/a&gt; , &#1075;&#1076;&#1077; &#1086;&#1089;&#1085;&#1086;&#1074;&#1085;&#1072;&#1103; &#1082;&#1086;&#1085;&#1094;&#1077;&#1087;&#1094;&#1080;&#1103; &#1088;&#1077;&#1072;&#1083;&#1080;&#1079;&#1086;&#1074;&#1072;&#1085;&#1072; &#1074; &#1092;&#1072;&#1081;&#1083;&#1077; &lt;em&gt;content.rhtml&lt;/em&gt;:&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="punct"&gt;&amp;lt;%&lt;/span&gt; &lt;span class="ident"&gt;command&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;/usr/local/bin/php -q /var/www/websites/mysite/public/sape1.php uri=&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt; &lt;span class="ident"&gt;request&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;env&lt;/span&gt;&lt;span class="punct"&gt;[&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;REQUEST_URI&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;].&lt;/span&gt;&lt;span class="ident"&gt;to_s&lt;/span&gt; &lt;span class="punct"&gt;%&amp;gt;&lt;/span&gt;&lt;span class="string"&gt;
&amp;lt;%= `&lt;span class="expr"&gt;#{command}&lt;/span&gt;` %&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#1063;&#1077;&#1088;&#1077;&#1079; &#1072;&#1076;&#1084;&#1080;&#1085;&#1080;&#1089;&#1090;&#1088;&#1072;&#1090;&#1080;&#1074;&#1085;&#1099;&#1081; &#1080;&#1085;&#1090;&#1077;&#1088;&#1092;&#1077;&#1081;&#1089; &#1076;&#1086;&#1073;&#1072;&#1074;&#1083;&#1103;&#1077;&#1084; &#1085;&#1086;&#1074;&#1099;&#1081; &lt;em&gt;plug-in&lt;/em&gt; &#1085;&#1072; &lt;em&gt;sidebar&lt;/em&gt;. &#1057; &#1087;&#1086;&#1103;&#1074;&#1083;&#1077;&#1085;&#1080;&#1077;&#1084; &#1085;&#1086;&#1074;&#1099;&#1093; &#1079;&#1072;&#1087;&#1088;&#1086;&#1089;&#1086;&#1074; &#1085;&#1072; &#1088;&#1072;&#1079;&#1084;&#1077;&#1097;&#1077;&#1085;&#1080;&#1077; &#1074; &lt;strong&gt;sape.ru&lt;/strong&gt;:&lt;/p&gt;

&lt;p&gt;&lt;img src="/files/sape-on-rails-1.gif" /&gt;&lt;/p&gt;

&lt;p&gt;&amp;#8230; &#1086;&#1085;&#1080; &#1087;&#1086;&#1103;&#1074;&#1083;&#1103;&#1102;&#1090;&#1089;&#1103; &#1074; &lt;em&gt;sidebar&lt;/em&gt; &#1086;&#1073;&#1083;&#1072;&#1089;&#1090;&#1080; &lt;strong&gt;Typo &#1073;&#1083;&#1086;&#1075;&#1072;&lt;/strong&gt;: &lt;/p&gt;

&lt;p&gt;&lt;img src="/files/sape-on-rails.gif" /&gt;&lt;/p&gt;

&lt;p&gt;&#1058;&#1072;&#1082; &#1095;&#1090;&#1086; &#1090;&#1077;, &#1082;&#1090;&#1086; &#1077;&#1097;&#1105; &#1085;&#1077; &#1087;&#1088;&#1080;&#1089;&#1086;&#1077;&#1076;&#1080;&#1085;&#1080;&#1083;&#1089;&#1103;, &lt;noindex&gt; &lt;a rel="nofollow"  href="http://www.sape.ru/r.50628f8cba.php"&gt;&#1084;&#1086;&#1075;&#1091;&#1090; &#1087;&#1086;&#1087;&#1088;&#1086;&#1073;&#1086;&#1074;&#1072;&#1090;&#1100;&lt;/a&gt; &lt;/noindex&gt; &#1074; &#1076;&#1077;&#1081;&#1089;&#1090;&#1074;&#1080;&#1080; &#1089;&#1080;&#1089;&#1090;&#1077;&#1084;&#1091; &#1082;&#1091;&#1087;&#1083;&#1080;-&#1087;&#1088;&#1086;&#1076;&#1072;&#1078;&#1080; &#1089;&#1089;&#1099;&#1083;&#1086;&#1082; &lt;strong&gt;Sape.ru&lt;/strong&gt; &#1090;&#1077;&#1087;&#1077;&#1088;&#1100; &#1080; &#1085;&#1072; &lt;strong&gt;Ruby On Rails&lt;/strong&gt; &#1089;&#1072;&#1081;&#1090;&#1072;&#1093;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;* &lt;em&gt;* UPDATE *&lt;/em&gt; *&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&#1086;&#1087;&#1080;&#1089;&#1072;&#1085;&#1085;&#1072;&#1103; &#1074;&#1099;&#1096;&#1077; &#1084;&#1077;&#1090;&#1086;&#1076;&#1080;&#1082;&#1072; &#1073;&#1099;&#1083;&#1072; &#1087;&#1088;&#1086;&#1090;&#1077;&#1089;&#1090;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1072; &#1085;&#1072; &#1089;&#1080;&#1089;&#1090;&#1077;&#1084;&#1077; &lt;strong&gt;RedHat EL3&lt;/strong&gt; c &lt;strong&gt;PHP 4.3.2&lt;/strong&gt;
&#1055;&#1086;&#1079;&#1078;&#1077; &#1074;&#1086;&#1079;&#1085;&#1080;&#1082;&#1083;&#1072; &#1085;&#1077;&#1086;&#1073;&#1093;&#1086;&#1076;&#1080;&#1084;&#1086;&#1089;&#1090;&#1100; &#1087;&#1077;&#1088;&#1077;&#1081;&#1090;&#1080; &#1085;&#1072; &lt;strong&gt;PHP 5.1&lt;/strong&gt; &#1080; &#1086;&#1082;&#1072;&#1079;&#1072;&#1083;&#1086;&#1089;&#1100;, &#1095;&#1090;&#1086; &#1087;&#1086;&#1076;&#1093;&#1086;&#1076; &#1082; &#1080;&#1085;&#1090;&#1077;&#1075;&#1088;&#1072;&#1094;&#1080;&#1080; php-sape &#1082;&#1083;&#1080;&#1077;&#1085;&#1090;&#1072; &#1074; &#1101;&#1090;&#1086;&#1084; &#1089;&#1083;&#1091;&#1095;&#1072;&#1077; &#1085;&#1077;&#1084;&#1085;&#1086;&#1075;&#1086; &#1086;&#1090;&#1083;&#1080;&#1095;&#1072;&#1077;&#1090;&#1089;&#1103;. &lt;/p&gt;

&lt;p&gt;&#1055;&#1088;&#1080; &#1079;&#1072;&#1087;&#1091;&#1089;&#1082;&#1077; php-&#1089;&#1082;&#1088;&#1080;&#1087;&#1090;&#1072; &lt;i&gt;public/sape1.php&lt;/i&gt; &#1080;&#1079; &lt;b&gt;typo&lt;/b&gt;-&#1086;&#1082;&#1088;&#1091;&#1078;&#1077;&#1085;&#1080;&#1103; &#1101;&#1083;&#1077;&#1084;&#1077;&#1085;&#1090; &#1084;&#1072;&#1089;&#1089;&#1080;&#1074;&#1072; &lt;i&gt;$_GET[&amp;#8216;uri&amp;#8217;]&lt;/i&gt; &#1085;&#1077; &#1080;&#1085;&#1080;&#1094;&#1080;&#1072;&#1083;&#1080;&#1079;&#1080;&#1088;&#1091;&#1077;&#1090;&#1089;&#1103; &#1079;&#1085;&#1072;&#1095;&#1077;&#1085;&#1080;&#1077;&#1084;, &#1074; &#1088;&#1077;&#1079;&#1091;&#1083;&#1100;&#1090;&#1072;&#1090;&#1077; &#1089;&#1089;&#1099;&#1083;&#1082;&#1080; &#1085;&#1072; &#1089;&#1090;&#1088;&#1072;&#1085;&#1080;&#1094;&#1077; &#1085;&#1077; &#1074;&#1080;&#1076;&#1085;&#1099;. 
 &#1044;&#1083;&#1103; &#1080;&#1089;&#1087;&#1088;&#1072;&#1074;&#1083;&#1077;&#1085;&#1080;&#1103; &#1089;&#1080;&#1090;&#1091;&#1072;&#1094;&#1080;&#1080; &#1074;&#1084;&#1077;&#1089;&#1090;&#1086; &lt;i&gt;$_GET[&amp;#8216;uri&amp;#8217;]&lt;/i&gt; &#1085;&#1091;&#1078;&#1085;&#1086; &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1086;&#1074;&#1072;&#1090;&#1100; $argv[1], &#1090;&#1072;&#1082;&#1078;&#1077; uri &#1080;&#1084;&#1077;&#1077;&#1090; &#1091;&#1078;&#1077; &#1079;&#1072;&#1082;&#1086;&#1076;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1085;&#1099;&#1081; &#1074;&#1080;&#1076;, &#1090;&#1072;&#1082; &#1095;&#1090;&#1086; &#1091;&#1073;&#1080;&#1088;&#1072;&#1077;&#1084; &#1089;&#1090;&#1088;&#1086;&#1082;&#1091; &#1089; &#1092;&#1091;&#1085;&#1082;&#1094;&#1080;&#1077;&#1081; urlencode(): &lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;
&amp;lt;?php
    define('_SAPE_USER', '999999999999999999999999999999999');
    require_once('/var/www/websites/mysite/'._SAPE_USER.'/sape.php');
    // replace $_GET[&#8216;uri&#8217;] with $argv[1]
    $o['request_uri'] = $argv[1];
    // remove uri encoding
    $o['host']    = 'cooper.ezlibrary.com';
    $o['charset'] = 'UTF-8';
    $sape = new SAPE_client($o);
    unset($o);
    echo $sape-&amp;gt;return_links();
?&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href="/files/sape_php5_sidebar.zip"&gt;&#1040; &#1074;  typo-&#1087;&#1083;&#1072;&#1075;&#1080;&#1085;&#1077;&lt;/a&gt; &#1086;&#1090;&#1082;&#1086;&#1088;&#1088;&#1077;&#1082;&#1090;&#1080;&#1088;&#1086;&#1074;&#1072;&#1090;&#1100; &#1092;&#1072;&#1081;&#1083;  views/content.rhtml &#1086;&#1087;&#1091;&#1089;&#1090;&#1080;&#1074; &#1085;&#1072;&#1079;&#1074;&#1072;&#1085;&#1080;&#1077; &#1087;&#1072;&#1088;&#1072;&#1084;&#1077;&#1090;&#1088;&#1072; uri &#1080; &#1091;&#1073;&#1088;&#1072;&#1074; &#1082;&#1083;&#1102;&#1095; -q:&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;
&lt;span class="punct"&gt;&amp;lt;%&lt;/span&gt; &lt;span class="ident"&gt;command&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;/usr/local/bin/php /var/www/websites/mysite/public/sape1.php &lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt; &lt;span class="ident"&gt;request&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;env&lt;/span&gt;&lt;span class="punct"&gt;[&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;REQUEST_URI&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;].&lt;/span&gt;&lt;span class="ident"&gt;to_s&lt;/span&gt; &lt;span class="punct"&gt;%&amp;gt;&lt;/span&gt;&lt;span class="string"&gt;
&amp;lt;%= `&lt;span class="expr"&gt;#{command}&lt;/span&gt;` %&lt;/span&gt;&lt;span class="punct"&gt;&amp;gt;&lt;/span&gt;

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Mon, 23 Apr 2007 16:52:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:603ae840-b49d-46cb-9827-942d215122fe</guid>
      <author>Cooper</author>
      <link>http://cooper.ezlibrary.com/articles/2007/04/23/sape_on_rails</link>
      <category>Typo</category>
      <category>Ruby</category>
      <category>Rails</category>
      <category>Sape</category>
      <category>sape</category>
      <category>rubyonrails</category>
      <category>links</category>
      <category>&#1089;&#1089;&#1099;&#1083;&#1082;&#1080;</category>
      <category>php</category>
      <category>rails</category>
      <enclosure length="1158" type="application/zip" url="http://cooper.ezlibrary.com/files/sape_php5_sidebar.zip"/>
    </item>
    <item>
      <title>TYPO 4.1. &#1052;&#1080;&#1075;&#1088;&#1072;&#1094;&#1080;&#1103; &#1073;&#1083;&#1086;&#1075;&#1072; &#1085;&#1072; &#1085;&#1086;&#1074;&#1099;&#1081; &#1088;&#1077;&#1083;&#1080;&#1079;</title>
      <description>&lt;p&gt;&#1055;&#1086;&#1089;&#1083;&#1077; &#1074;&#1099;&#1093;&#1086;&#1076;&#1072; &#1074;&#1077;&#1088;&#1089;&#1080;&#1080; &lt;em&gt;typo 4.1&lt;/em&gt; &#1090;&#1091;&#1090; &#1078;&#1077; &#1079;&#1072;&#1093;&#1086;&#1090;&#1077;&#1083;&#1086;&#1089;&#1100; &#1086;&#1087;&#1088;&#1086;&#1073;&#1086;&#1074;&#1072;&#1090;&#1100; &#1077;&#1105; &#1074; &#1076;&#1077;&#1083;&#1077;. &#1042; &#1087;&#1088;&#1080;&#1085;&#1094;&#1080;&#1087;&#1077;, &#1089;&#1072;&#1084; &#1087;&#1088;&#1086;&#1094;&#1077;&#1089;&#1089; &#1086;&#1073;&#1085;&#1086;&#1074;&#1083;&#1077;&#1085;&#1080;&#1103; &#1087;&#1088;&#1072;&#1082;&#1090;&#1080;&#1095;&#1077;&#1089;&#1082;&#1080; &#1085;&#1077; &#1086;&#1090;&#1083;&#1080;&#1095;&#1072;&#1083;&#1089;&#1103; &#1086;&#1090; &#1087;&#1088;&#1077;&#1076;&#1099;&#1076;&#1091;&#1097;&#1077;&#1075;&#1086;, &#1076;&#1086;&#1073;&#1072;&#1074;&#1080;&#1083;&#1089;&#1103; &#1090;&#1086;&#1083;&#1100;&#1082;&#1086; 4-&#1081; &#1087;&#1091;&#1085;&#1082;&#1090;, &#1080;&#1079;-&#1079;&#1072; &#1090;&#1086;&#1075;&#1086; &#1095;&#1090;&#1086; &#1080;&#1079;&#1084;&#1077;&#1085;&#1080;&#1083;&#1089;&#1103; &#1072;&#1076;&#1088;&#1077;&#1089; &#1080; &#1089;&#1087;&#1086;&#1089;&#1086;&#1073; &#1076;&#1086;&#1089;&#1090;&#1091;&#1087;&#1072; &#1082; &lt;em&gt;svn&lt;/em&gt;-&#1088;&#1077;&#1087;&#1086;&#1079;&#1080;&#1090;&#1072;&#1088;&#1080;&#1102; &#1087;&#1088;&#1086;&#1077;&#1082;&#1090;&#1072;. &#1045;&#1097;&#1105; &#1086;&#1076;&#1085;&#1072; &#1074;&#1077;&#1097;&#1100;, &#1082;&#1086;&#1090;&#1086;&#1088;&#1072;&#1103; &#1073;&#1088;&#1086;&#1089;&#1080;&#1083;&#1072;&#1089;&#1100; &#1074; &#1075;&#1083;&#1072;&#1079;&#1072; &#1087;&#1086;&#1089;&#1083;&#1077; &#1079;&#1072;&#1074;&#1077;&#1088;&#1096;&#1077;&#1085;&#1080;&#1103; &#1086;&#1073;&#1085;&#1086;&#1074;&#1083;&#1077;&#1085;&#1080;&#1103;, &#1101;&#1090;&#1086; &lt;em&gt;&#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084;&#1072;&lt;/em&gt; &#1089; &#1086;&#1073;&#1088;&#1072;&#1073;&#1086;&#1090;&#1082;&#1086;&#1081; &#1090;&#1101;&#1075;&#1086;&#1074; &lt;em&gt;typo:code&lt;/em&gt;, &lt;em&gt;typo:lightbox&lt;/em&gt;. &#1069;&#1090;&#1086; &#1090;&#1086;&#1083;&#1100;&#1082;&#1086; &#1090;&#1077; &lt;em&gt;&#1090;&#1077;&#1075;&#1080;&lt;/em&gt;, &#1082;&#1086;&#1090;&#1086;&#1088;&#1099;&#1077; &#1103; &#1079;&#1072;&#1084;&#1077;&#1090;&#1080;&#1083;. &#1057;&#1091;&#1076;&#1103; &#1087;&#1086; &lt;noindex&gt;&lt;a ref="nofollow"  href="http://rubyforge.org/pipermail/typo-list/2007-March/004028.html"&gt;&#1086;&#1090;&#1082;&#1083;&#1080;&#1082;&#1072;&#1084;&lt;/a&gt;&lt;/noindex&gt;  , &#1089;&#1091;&#1097;&#1077;&#1089;&#1090;&#1074;&#1091;&#1102;&#1090; &#1080; &#1076;&#1088;&#1091;&#1075;&#1080;&#1077; &#1087;&#1086;&#1093;&#1086;&#1078;&#1080;&#1077; &#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084;&#1099;. &lt;i&gt;&lt;noindex&gt;&lt;a ref="nofollow"  href="http://fredericdevillamil.com/"&gt;Frederic&lt;/a&gt;&lt;/noindex&gt;&lt;/i&gt; &#1086;&#1073;&#1077;&#1097;&#1072;&#1077;&#1090; &#1088;&#1072;&#1079;&#1086;&#1073;&#1088;&#1072;&#1090;&#1100;&#1089;&#1103; &#1089; &#1101;&#1090;&#1080;&#1084; &#1074; &#1088;&#1077;&#1083;&#1080;&#1079;&#1077; 4.1.1. &#1055;&#1086;&#1082;&#1072; &#1095;&#1090;&#1086; &#1087;&#1088;&#1080;&#1096;&#1083;&#1086;&#1089;&#1100; &#1076;&#1083;&#1103; &#1090;&#1086;&#1087;&#1086;&#1074;&#1099;&#1093; &#1087;&#1086;&#1089;&#1090;&#1086;&#1074; &#1087;&#1086;&#1084;&#1077;&#1085;&#1103;&#1090;&#1100; &lt;em&gt;&amp;lt;typo:code&amp;gt;&lt;/em&gt; &#1085;&#1072; &lt;em&gt;&amp;lt;pre&amp;gt;&lt;/em&gt; &#1072; &lt;em&gt;&amp;lt;typo:lightbox /&amp;gt;&lt;/em&gt; &#1085;&#1072; &lt;em&gt;&amp;lt;img /&amp;gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&#1048;&#1090;&#1072;&#1082;, &#1089;&#1072;&#1084; &#1087;&#1088;&#1086;&#1094;&#1077;&#1089;&#1089; &#1086;&#1073;&#1085;&#1086;&#1074;&#1083;&#1077;&#1085;&#1080;&#1103; &#1086;&#1087;&#1080;&#1089;&#1072;&#1085; &#1085;&#1080;&#1078;&#1077;:&lt;/p&gt;

&lt;p&gt;1) &#1054;&#1089;&#1090;&#1072;&#1085;&#1072;&#1074;&#1083;&#1080;&#1074;&#1072;&#1077;&#1084; &lt;em&gt;lighttpd&lt;/em&gt;:&lt;/p&gt;

&lt;pre&gt;
/etc/init.d/lighttpd stop
&lt;/pre&gt;

&lt;p&gt;2) &#1044;&#1077;&#1083;&#1072;&#1077;&#1084; backup &#1089;&#1072;&#1081;&#1090;&#1072;: &lt;/p&gt;

&lt;pre&gt;

tar cfv cooper.ezlibrary.com_r1193.tar www.ezlibrary.com/*
gzip cooper.ezlibrary.com_r1193.tar 

&lt;/pre&gt;

&lt;p&gt;3) &#1041;&#1101;&#1082;&#1072;&#1087;&#1080;&#1088;&#1091;&#1077;&#1084; &#1073;&#1072;&#1079;&#1091; MySQL:&lt;/p&gt;

&lt;pre&gt;

 mysqldump typo_user_typo &gt; /home/backups/mysql/cooper.ezlibrary.com-mysql-db-backup.sql

&lt;/pre&gt;

&lt;p&gt;4) &#1055;&#1077;&#1088;&#1077;&#1082;&#1083;&#1102;&#1095;&#1072;&#1077;&#1084;&#1089;&#1103; &#1085;&#1072; &#1085;&#1086;&#1074;&#1099;&#1081; &lt;em&gt;typo&lt;/em&gt; &lt;em&gt;svn&lt;/em&gt;-&#1088;&#1077;&#1087;&#1086;&#1079;&#1080;&#1090;&#1086;&#1088;&#1080;&#1081; (&#1077;&#1089;&#1083;&#1080; &#1077;&#1097;&#1105; &#1085;&#1077; &#1087;&#1077;&#1088;&#1077;&#1082;&#1083;&#1102;&#1095;&#1080;&#1083;&#1080;&#1089;&#1100;):&lt;/p&gt;

&lt;pre&gt;

svn switch --relocate svn://typosphere.org/typo/trunk  http://svn.typosphere.org/typo/trunk

&lt;/pre&gt;

&lt;p&gt;5) &#1054;&#1073;&#1085;&#1086;&#1074;&#1083;&#1103;&#1077;&#1084; &#1090;&#1077;&#1082;&#1091;&#1097;&#1091;&#1102; &#1074;&#1077;&#1088;&#1089;&#1080;&#1102; &#1087;&#1086;&#1089;&#1083;&#1077;&#1076;&#1085;&#1080;&#1084; &#1089;&#1090;&#1072;&#1073;&#1080;&#1083;&#1100;&#1085;&#1099;&#1084; &#1088;&#1077;&#1083;&#1080;&#1079;&#1086;&#1084;  4.1 (revision 1389):&lt;/p&gt;

&lt;pre&gt;
svn update -r 1389
&lt;/pre&gt;

&lt;p&gt;6) &#1052;&#1080;&#1075;&#1088;&#1080;&#1088;&#1091;&#1077;&#1084; &#1085;&#1072; &#1085;&#1086;&#1074;&#1091;&#1102; &#1074;&#1077;&#1088;&#1089;&#1080;&#1102; &#1089;&#1093;&#1077;&#1084;&#1099; &#1073;&#1072;&#1079;&#1099; &#1076;&#1072;&#1085;&#1085;&#1099;&#1093;:&lt;/p&gt;

&lt;pre&gt;
rake migrate
&lt;/pre&gt;

&lt;p&gt;7) &#1057;&#1090;&#1072;&#1088;&#1090;&#1091;&#1077;&#1084; lighttpd:&lt;/p&gt;

&lt;pre&gt;
/etc/init.d/lighttpd start
&lt;/pre&gt;</description>
      <pubDate>Wed, 21 Mar 2007 01:27:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:66a78044-4c2b-4843-99fd-d298afaac747</guid>
      <author>Cooper</author>
      <link>http://cooper.ezlibrary.com/articles/2007/03/21/migration_to_4-1_from_4-0-1</link>
      <category>Typo</category>
      <category>Ruby</category>
      <category>Rails</category>
      <category>4.1</category>
      <category>4.0.1</category>
      <category>typo</category>
      <category>migration</category>
      <category>lighttpd</category>
      <category>backup</category>
      <category>svn</category>
      <category>release</category>
    </item>
    <item>
      <title>TYPO 4.1. &#1063;&#1090;&#1086; &#1085;&#1086;&#1074;&#1086;&#1075;&#1086;?</title>
      <description>&lt;p&gt;&#1043;&#1076;&#1077;-&#1090;&#1086; &#1089; &#1082;&#1086;&#1085;&#1094;&#1072; &#1087;&#1088;&#1086;&#1096;&#1083;&#1086;&#1075;&#1086; &#1075;&#1086;&#1076;&#1072; &#1082;&#1072;&#1079;&#1072;&#1083;&#1086;&#1089;&#1100;, &#1095;&#1090;&#1086; &#1087;&#1088;&#1086;&#1077;&#1082;&#1090; &#1074;&#1086;&#1090;-&#1074;&#1086;&#1090; &#1079;&#1072;&#1082;&#1086;&#1085;&#1095;&#1080;&#1090; &#1089;&#1074;&#1086;&#1077; &#1089;&#1091;&#1097;&#1077;&#1089;&#1090;&#1074;&#1086;&#1074;&#1072;&#1085;&#1080;&#1077;. &#1054;&#1073; &#1101;&#1090;&#1086;&#1084; &#1084;&#1086;&#1078;&#1085;&#1086; &#1073;&#1099;&#1083;&#1086; &#1089;&#1091;&#1076;&#1080;&#1090;&#1100; &#1087;&#1086;&#1090;&#1086;&#1084;&#1091;, &#1095;&#1090;&#1086; &#1088;&#1072;&#1079;&#1088;&#1072;&#1073;&#1086;&#1090;&#1082;&#1072; &#1085;&#1077; &#1074;&#1077;&#1083;&#1072;&#1089;&#1100; &#1085;&#1077;&#1089;&#1082;&#1086;&#1083;&#1100;&#1082;&#1086; &#1084;&#1077;&#1089;&#1103;&#1094;&#1077;&#1074;, &#1086;&#1092;&#1080;&#1094;&#1080;&#1072;&#1083;&#1100;&#1085;&#1099;&#1081; &#1089;&#1072;&#1081;&#1090; &#1087;&#1088;&#1086;&#1077;&#1082;&#1090;&#1072; &#1073;&#1099;&#1083; &#1085;&#1077;&#1076;&#1086;&#1089;&#1090;&#1091;&#1087;&#1077;&#1085; &#1074; &#1090;&#1077;&#1095;&#1077;&#1085;&#1080;&#1077; &#1090;&#1088;&#1105;&#1093; &#1084;&#1077;&#1089;&#1103;&#1094;&#1077;&#1074; &#1073;&#1077;&#1079; &#1082;&#1072;&#1082;&#1080;&#1093;-&#1083;&#1080;&#1073;&#1086; &#1086;&#1092;&#1080;&#1094;&#1080;&#1072;&#1083;&#1100;&#1085;&#1099;&#1093; &#1086;&#1073;&#1098;&#1103;&#1089;&#1085;&#1077;&#1085;&#1080;&#1081;. &#1053;&#1077; &#1073;&#1099;&#1083;&#1072; &#1080;&#1079;&#1074;&#1077;&#1089;&#1090;&#1085;&#1072; &#1076;&#1072;&#1090;&#1072; &#1089;&#1083;&#1077;&#1076;&#1091;&#1102;&#1097;&#1077;&#1075;&#1086; &#1086;&#1092;&#1080;&#1094;&#1080;&#1072;&#1083;&#1100;&#1085;&#1086;&#1075;&#1086; &#1088;&#1077;&#1083;&#1080;&#1079;&#1072; &#1080;, &#1077;&#1089;&#1083;&#1080; &#1075;&#1086;&#1074;&#1086;&#1088;&#1080;&#1090;&#1100;,  &#1074; &#1086;&#1073;&#1097;&#1077;&#1084; &#1080; &#1094;&#1077;&#1083;&#1086;&#1084; - &#1073;&#1091;&#1076;&#1091;&#1097;&#1077;&#1077; &#1087;&#1088;&#1086;&#1077;&#1082;&#1090;&#1072;.  &#1053;&#1072; &#1101;&#1090;&#1086;&#1084; &#1092;&#1086;&#1085;&#1077; &#1084;&#1085;&#1086;&#1075;&#1080;&#1077; &#1087;&#1088;&#1080;&#1074;&#1077;&#1088;&#1078;&#1077;&#1085;&#1094;&#1099; &lt;strong&gt;Typo&lt;/strong&gt; &#1085;&#1072;&#1095;&#1072;&#1083;&#1080; &#1087;&#1077;&#1088;&#1077;&#1093;&#1086;&#1076;&#1080;&#1090;&#1100; &#1085;&#1072; &lt;strong&gt;Mephisto&lt;/strong&gt; &#1080;&#1083;&#1080; &#1076;&#1088;&#1091;&#1075;&#1080;&#1077; &lt;strong&gt;blog-engines&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&#1048; &#1074;&#1086;&#1090;, &#1085;&#1072;&#1082;&#1086;&#1085;&#1077;&#1094;, &#1074;&#1099;&#1096;&#1077;&#1083; &#1086;&#1095;&#1077;&#1088;&#1077;&#1076;&#1085;&#1086;&#1081; &#1088;&#1077;&#1083;&#1080;&#1079; &lt;strong&gt;Typo 4.1&lt;/strong&gt; , &#1074; &#1082;&#1086;&#1090;&#1086;&#1088;&#1086;&#1084; &#1088;&#1077;&#1072;&#1083;&#1080;&#1079;&#1086;&#1074;&#1072;&#1085;&#1086; &#1085;&#1077;&#1089;&#1082;&#1086;&#1083;&#1100;&#1082;&#1086; &#1080;&#1085;&#1090;&#1077;&#1088;&#1077;&#1089;&#1085;&#1099;&#1093;  &#1074;&#1077;&#1097;&#1077;&#1081;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&#1055;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1082;&#1072; &lt;strong&gt;Ruby on Rails 1.2&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;&#1042;&#1085;&#1077;&#1089;&#1077;&#1085;&#1099; &#1092;&#1091;&#1085;&#1082;&#1094;&#1080;&#1086;&#1085;&#1072;&#1083;&#1100;&#1085;&#1099;&#1077; &#1080; &#1101;&#1088;&#1075;&#1086;&#1085;&#1086;&#1084;&#1080;&#1095;&#1077;&#1089;&#1082;&#1080;&#1077; &#1080;&#1079;&#1084;&#1077;&#1085;&#1077;&#1085;&#1080;&#1103; &#1074; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083; &#1072;&#1076;&#1084;&#1080;&#1085;&#1080;&#1089;&#1090;&#1088;&#1080;&#1088;&#1086;&#1074;&#1072;&#1085;&#1080;&#1103; &#1073;&#1083;&#1086;&#1075;&#1072; (back office).&lt;/li&gt;
&lt;li&gt;&#1044;&#1086;&#1073;&#1072;&#1074;&#1083;&#1077;&#1085;&#1072; &#1087;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1082;&#1072; &#1080;&#1085;&#1090;&#1077;&#1088;&#1085;&#1072;&#1094;&#1080;&#1086;&#1085;&#1072;&#1083;&#1080;&#1079;&#1072;&#1094;&#1080;&#1080; &#1080; &#1083;&#1086;&#1082;&#1072;&#1083;&#1080;&#1079;&#1072;&#1094;&#1080;&#1080;, &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1091;&#1103; localization &#1087;&#1083;&#1072;&#1075;&#1080;&#1085;. &#1048;&#1079; &#1087;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1080;&#1074;&#1072;&#1077;&#1084;&#1099;&#1093; &#1103;&#1079;&#1099;&#1082;&#1086;&#1074; &#1074; &#1076;&#1072;&#1085;&#1085;&#1086;&#1084; &#1088;&#1077;&#1083;&#1080;&#1079;&#1077; &#1082;&#1088;&#1086;&#1084;&#1077; &#1072;&#1085;&#1075;&#1083;&#1080;&#1081;&#1089;&#1082;&#1086;&#1075;&#1086; &#1103;&#1079;&#1099;&#1082;&#1072; &#1076;&#1086;&#1089;&#1090;&#1091;&#1087;&#1077;&#1085; &#1077;&#1097;&#1105; &#1092;&#1088;&#1072;&#1085;&#1094;&#1091;&#1079;&#1089;&#1082;&#1080;&#1081;.&lt;/li&gt;
&lt;li&gt;&#1050;&#1086;&#1084;&#1084;&#1077;&#1085;&#1090;&#1072;&#1088;&#1080;&#1080; &#1080;  trackbacks &#1087;&#1086; &#1091;&#1084;&#1086;&#1083;&#1095;&#1072;&#1085;&#1080;&#1102; &#1084;&#1086;&#1076;&#1077;&#1088;&#1080;&#1088;&#1091;&#1077;&#1084;&#1099;.&lt;/li&gt;
&lt;li&gt;&#1048;&#1089;&#1087;&#1088;&#1072;&#1074;&#1083;&#1077;&#1085;&#1086; &#1084;&#1085;&#1086;&#1078;&#1077;&#1089;&#1090;&#1074;&#1086; &#1086;&#1096;&#1080;&#1073;&#1086;&#1082; &#1080; &#1087;&#1088;&#1086;&#1074;&#1077;&#1076;&#1077;&#1085;&#1086; &#1091;&#1083;&#1091;&#1095;&#1096;&#1077;&#1085;&#1080;&#1077; &#1082;&#1086;&#1076;&#1072;.&lt;/li&gt;
&lt;li&gt;&#1055;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1082;&#1072; RSS &#1076;&#1083;&#1103; &#1090;&#1101;&#1075;&#1086;&#1074; &#1080; &#1082;&#1072;&#1090;&#1077;&#1075;&#1086;&#1088;&#1080;&#1081;.&lt;/li&gt;
&lt;li&gt;&#1055;&#1083;&#1072;&#1075;&#1080;&#1085;&#1099; &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1091;&#1102;&#1090; &#1084;&#1077;&#1093;&#1072;&#1085;&#1080;&#1079;&#1084; Rails plugin. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Typo 4.2&lt;/strong&gt; &#1087;&#1086; &#1087;&#1088;&#1086;&#1075;&#1085;&#1086;&#1079;&#1072;&#1084; &#1076;&#1086;&#1083;&#1078;&#1085;&#1086; &#1073;&#1099;&#1090;&#1100; &#1074;&#1099;&#1087;&#1091;&#1097;&#1077;&#1085;&#1086; &#1095;&#1077;&#1088;&#1077;&#1079; &#1076;&#1074;&#1072; &#1084;&#1077;&#1089;&#1103;&#1094;&#1072;, &#1080; &#1089;&#1091;&#1076;&#1103; &#1087;&#1086; &#1087;&#1083;&#1072;&#1085;&#1072;&#1084; &#1101;&#1090;&#1086;&#1090; &#1088;&#1077;&#1083;&#1080;&#1079; &#1073;&#1091;&#1076;&#1077;&#1090; &#1074;&#1099;&#1075;&#1083;&#1103;&#1076;&#1077;&#1090;&#1100; &#1090;&#1072;&#1082;&#1078;&#1077; &#1074;&#1087;&#1077;&#1095;&#1072;&#1090;&#1083;&#1103;&#1102;&#1097;&#1077;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&#1055;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1082;&#1072; &#1087;&#1086;&#1083;&#1100;&#1079;&#1086;&#1074;&#1072;&#1090;&#1077;&#1083;&#1100;&#1089;&#1082;&#1080;&#1093; &#1088;&#1086;&#1083;&#1077;&#1081; &#1080; &#1087;&#1088;&#1086;&#1094;&#1077;&#1089;&#1089;&#1072; &#1087;&#1091;&#1073;&#1083;&#1080;&#1082;&#1072;&#1094;&#1080;&#1080; &#1089;&#1090;&#1072;&#1090;&#1100;&#1080;.&lt;/li&gt;
&lt;li&gt;&#1042;&#1086;&#1079;&#1084;&#1086;&#1078;&#1085;&#1086;&#1089;&#1090;&#1100; &#1088;&#1077;&#1072;&#1083;&#1080;&#1079;&#1072;&#1094;&#1080;&#1080; &#1085;&#1072; &#1086;&#1076;&#1085;&#1086;&#1081; &#1082;&#1086;&#1087;&#1080;&#1080; &lt;strong&gt;Typo&lt;/strong&gt; &#1084;&#1085;&#1086;&#1078;&#1077;&#1089;&#1090;&#1074;&#1072; &#1073;&#1083;&#1086;&#1075;&#1086;&#1074;.&lt;/li&gt;
&lt;li&gt;&#1055;&#1077;&#1088;&#1077;&#1093;&#1086;&#1076; &#1089; &#1084;&#1086;&#1076;&#1091;&#1083;&#1103; &lt;strong&gt;Localization&lt;/strong&gt; &#1085;&#1072; &lt;strong&gt;Globalization&lt;/strong&gt; &#1076;&#1083;&#1103; &#1087;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1082;&#1080; &lt;em&gt;i18n&lt;/em&gt; &#1080; &lt;em&gt;l10n&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;&#1048;&#1085;&#1090;&#1077;&#1075;&#1088;&#1072;&#1094;&#1080;&#1103; &#1087;&#1088;&#1077;&#1076;&#1083;&#1086;&#1078;&#1077;&#1085;&#1085;&#1099;&#1093; &#1088;&#1072;&#1079;&#1088;&#1072;&#1073;&#1086;&#1090;&#1095;&#1080;&#1082;&#1072;&#1084;&#1080; &#1087;&#1072;&#1090;&#1095;&#1077;&#1081; &#1082;&#1072;&#1082; &#1087;&#1083;&#1072;&#1075;&#1080;&#1085;&#1086;&#1074;.&lt;/li&gt;
&lt;li&gt;&#1047;&#1072;&#1074;&#1077;&#1088;&#1096;&#1077;&#1085;&#1080;&#1077; &#1091;&#1083;&#1091;&#1095;&#1096;&#1077;&#1085;&#1080;&#1103; &#1072;&#1076;&#1084;&#1080;&#1085;&#1080;&#1089;&#1090;&#1088;&#1072;&#1090;&#1080;&#1074;&#1085;&#1086;&#1075;&#1086; &#1088;&#1072;&#1079;&#1076;&#1077;&#1083;&#1072; &#1073;&#1083;&#1086;&#1075;&#1072;.&lt;/li&gt;
&lt;li&gt;&#1055;&#1077;&#1088;&#1077;&#1074;&#1086;&#1076; &#1080;&#1085;&#1090;&#1077;&#1088;&#1092;&#1077;&#1081;&#1089;&#1072; &#1085;&#1072; &#1085;&#1086;&#1074;&#1099;&#1077; &#1103;&#1079;&#1099;&#1082;&#1080;.&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Tue, 20 Mar 2007 12:13:00 -0600</pubDate>
      <guid isPermaLink="false">urn:uuid:5ac239c2-4e19-4f5e-a28b-2052125a9995</guid>
      <author>Cooper</author>
      <link>http://cooper.ezlibrary.com/articles/2007/03/20/typo_4-1_what_is_new</link>
      <category>Typo</category>
      <category>Ruby</category>
      <category>Rails</category>
      <category>4.1</category>
      <category>release</category>
      <category>announce</category>
      <category>typo</category>
      <category>rubyonrails</category>
      <category>i18n</category>
      <category>l10n</category>
    </item>
    <item>
      <title>&#1054;&#1073;&#1085;&#1086;&#1074;&#1083;&#1077;&#1085;&#1080;&#1077; Typo &#1076;&#1086; &#1087;&#1086;&#1089;&#1083;&#1077;&#1076;&#1085;&#1077;&#1081; trunk-&#1088;&#1077;&#1074;&#1080;&#1079;&#1080;&#1080; (Revision: 1193)</title>
      <description>&lt;p&gt;&#1055;&#1088;&#1077;&#1078;&#1076;&#1077; &#1074;&#1089;&#1077;&#1075;&#1086; &#1086;&#1089;&#1090;&#1072;&#1085;&#1086;&#1074;&#1080;&#1083; &#1076;&#1077;&#1084;&#1086;&#1085;&#1099; Lighttpd &#1080; httpd.
&#1047;&#1072;&#1090;&#1077;&#1084; &#1089;&#1076;&#1077;&#1083;&#1072;&#1083; backup typo-&#1076;&#1080;&#1088;&#1077;&#1082;&#1090;&#1086;&#1088;&#1080;&#1080; &#1080; &#1041;&#1044; MySQL.
&#1055;&#1086;&#1087;&#1099;&#1090;&#1072;&#1083;&#1089;&#1103; &#1079;&#1072;&#1087;&#1091;&#1089;&#1090;&#1080;&#1090;&#1100; update&lt;/p&gt;

&lt;pre&gt;
$svn update
&lt;/pre&gt;

&lt;p&gt;&#1055;&#1086;&#1089;&#1083;&#1077; &#1085;&#1077;&#1073;&#1086;&#1083;&#1100;&#1096;&#1086;&#1075;&#1086; &#1088;&#1072;&#1079;&#1076;&#1091;&#1084;&#1100;&#1103; svn &#1074;&#1099;&#1076;&#1072;&#1077;&#1090; &#1086;&#1096;&#1080;&#1073;&#1082;&#1091;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;svn: Working copy &amp;#8216;log&amp;#8217; is missing or not locked&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&#1087;&#1086;&#1080;&#1089;&#1082; &#1074; Google &#1084;&#1072;&#1083;&#1086; &#1095;&#1077;&#1084; &#1087;&#1086;&#1084;&#1086;&#1075;, &amp;#8211; &#1085;&#1072; &#1074;&#1089;&#1077; &#1087;&#1086;&#1076;&#1086;&#1073;&#1085;&#1099;&#1077; &#1074;&#1086;&#1087;&#1088;&#1086;&#1089;&#1099; &#1074; &#1092;&#1086;&#1088;&#1091;&#1084;&#1072;&#1093; &#1083;&#1080;&#1073;&#1086; &#1085;&#1077;&#1090; &#1086;&#1090;&#1074;&#1077;&#1090;&#1072;, &#1083;&#1080;&#1073;&#1086; &#1087;&#1088;&#1080;&#1084;&#1080;&#1090;&#1080;&#1074;&#1085;&#1086;&#1077; &amp;#8220;&#1091;&#1076;&#1072;&#1083;&#1080;&#1090;&#1077; &#1076;&#1080;&#1088;&#1077;&#1082;&#1090;&#1086;&#1088;&#1080;&#1102; &#1080; &#1087;&#1086;&#1087;&#1088;&#1086;&#1073;&#1091;&#1081;&#1090;&#1077; &#1077;&#1097;&#1105; &#1088;&#1072;&#1079;&amp;#8221;. 
 &#1053;&#1080;&#1095;&#1077;&#1075;&#1086; &#1085;&#1077; &#1086;&#1089;&#1090;&#1072;&#1077;&#1090;&#1089;&#1103; &#1076;&#1077;&#1083;&#1072;&#1090;&#1100;, &amp;#8211; &#1089;&#1082;&#1080;&#1076;&#1099;&#1074;&#1072;&#1102; log &#1074; &#1076;&#1088;&#1091;&#1075;&#1086;&#1077; &#1084;&#1077;&#1089;&#1090;&#1086;, &#1087;&#1088;&#1086;&#1073;&#1091;&#1102; update, &#1074;&#1099;&#1076;&#1072;&#1077;&#1090;&#1089;&#1103; &#1090;&#1086; &#1078;&#1077; &#1089;&#1072;&#1084;&#1086;&#1077;, &#1090;&#1086;&#1083;&#1100;&#1082;&#1086; &#1091;&#1078;&#1077; svn &#1085;&#1077; &#1085;&#1088;&#1072;&#1074;&#1080;&#1090;&#1089;&#1103; &#1076;&#1080;&#1088;&#1077;&#1082;&#1090;&#1086;&#1088;&#1080;&#1103; &lt;em&gt;&amp;#8216;tmp/cache&amp;#8217;&lt;/em&gt;. &#1055;&#1077;&#1088;&#1077;&#1084;&#1077;&#1097;&#1072;&#1102; &#1077;&#1105; &#1074;&#1089;&#1083;&#1077;&#1076; &#1079;&#1072; &lt;em&gt;log&lt;/em&gt;.
 &#1055;&#1086;&#1089;&#1083;&#1077; &#1101;&#1090;&#1086;&#1075;&#1086; &lt;em&gt;svn update&lt;/em&gt; &#1087;&#1088;&#1086;&#1093;&#1086;&#1076;&#1080;&#1090; &#1073;&#1077;&#1079; &#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084;. &#1042;&#1086;&#1079;&#1074;&#1088;&#1072;&#1097;&#1072;&#1102; &#1076;&#1080;&#1088;&#1077;&#1082;&#1090;&#1086;&#1088;&#1080;&#1080; &lt;em&gt;&amp;#8216;tmp/cache&amp;#8217;&lt;/em&gt; &#1080; &lt;em&gt;log&lt;/em&gt; &#1086;&#1073;&#1088;&#1072;&#1090;&#1085;&#1086;, &#1076;&#1072;&#1083;&#1100;&#1096;&#1077; &#1085;&#1091;&#1078;&#1085;&#1086; &#1086;&#1073;&#1085;&#1086;&#1074;&#1080;&#1090;&#1100; &#1089;&#1090;&#1088;&#1091;&#1082;&#1090;&#1091;&#1088;&#1091; &#1041;&#1044;:&lt;/p&gt;

&lt;pre&gt;
rake migrate
&lt;/pre&gt;

&lt;p&gt;&#1080; &#1074;&#1089;&#1105;! &#1052;&#1086;&#1078;&#1085;&#1086; &#1089;&#1090;&#1072;&#1088;&#1090;&#1086;&#1074;&#1072;&#1090;&#1100; Apache &#1080; Lighttpd.&lt;/p&gt;</description>
      <pubDate>Sun, 06 Aug 2006 23:34:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:6723b76c-48e1-4833-a68a-c08dee2aadc2</guid>
      <author>Cooper</author>
      <link>http://cooper.ezlibrary.com/articles/2006/08/06/typo_update</link>
      <category>Typo</category>
      <category>Ruby</category>
      <category>Rails</category>
      <category>typo</category>
      <category>update</category>
      <category>ruby</category>
      <category>rails</category>
      <category>rake</category>
    </item>
    <item>
      <title>Typo Live Search. &#1056;&#1077;&#1096;&#1077;&#1085;&#1080;&#1077; &#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084;&#1099; &#1087;&#1086;&#1080;&#1089;&#1082;&#1072; &#1074; &#1082;&#1080;&#1088;&#1080;&#1083;&#1083;&#1080;&#1094;&#1077;</title>
      <description>&lt;p&gt;&#1055;&#1086;&#1089;&#1083;&#1077; &#1091;&#1089;&#1090;&#1072;&#1085;&#1086;&#1074;&#1082;&#1080; typo &#1080;&#1079; trunk (rev.1055) &#1082; &#1084;&#1086;&#1077;&#1084;&#1091; &#1091;&#1076;&#1080;&#1074;&#1083;&#1077;&#1085;&#1080;&#1102; &#1087;&#1086;&#1076;&#1076;&#1077;&#1088;&#1078;&#1082;&#1072; &lt;strong&gt;UNICODE&lt;/strong&gt; &#1088;&#1072;&#1073;&#1086;&#1090;&#1072;&#1083;&#1072; &#1085;&#1086;&#1088;&#1084;&#1072;&#1083;&#1100;&#1085;&#1086; &#1074;&#1086; &#1074;&#1089;&#1077;&#1093; &#1087;&#1088;&#1086;&#1074;&#1077;&#1088;&#1077;&#1085;&#1085;&#1099;&#1093; &#1084;&#1085;&#1086;&#1081; &#1088;&#1077;&#1078;&#1080;&#1084;&#1072;&#1093;. &#1054;&#1075;&#1086;&#1088;&#1095;&#1080;&#1083;&#1086; &#1090;&#1086;&#1083;&#1100;&#1082;&#1086; &#1090;&#1086;, &#1095;&#1090;&#1086; &#1074; &amp;#8220;&#1078;&#1080;&#1074;&#1086;&#1084; &#1087;&#1086;&#1080;&#1089;&#1082;&#1077;&amp;#8221; &#1088;&#1091;&#1089;&#1089;&#1082;&#1080;&#1077; &#1073;&#1091;&#1082;&#1074;&#1099; &#1090;&#1088;&#1072;&#1085;&#1089;&#1092;&#1086;&#1088;&#1084;&#1080;&#1088;&#1086;&#1074;&#1072;&#1083;&#1080;&#1089;&#1100; &#1074; &#1087;&#1086;&#1089;&#1083;&#1077;&#1076;&#1086;&#1074;&#1072;&#1090;&#1077;&#1083;&#1100;&#1085;&#1086;&#1089;&#1090;&#1100; &#1090;&#1080;&#1087;&#1072; %uxxxx (&#1089;&#1084;. &#1088;&#1080;&#1089;&#1091;&#1085;&#1086;&#1082;) &#1080; &#1089;&#1086;&#1086;&#1090;&#1074;&#1077;&#1090;&#1089;&#1090;&#1074;&#1077;&#1085;&#1085;&#1086; &#1087;&#1086;&#1080;&#1089;&#1082; &#1085;&#1072; &#1088;&#1091;&#1089;&#1089;&#1082;&#1086;&#1084; &#1103;&#1079;&#1099;&#1082;&#1077; &#1085;&#1077; &#1088;&#1072;&#1073;&#1086;&#1090;&#1072;&#1083;.
 &#1055;&#1086;&#1089;&#1083;&#1077; &#1085;&#1077;&#1073;&#1086;&#1083;&#1100;&#1096;&#1086;&#1075;&#1086; &#1080;&#1089;&#1089;&#1083;&#1077;&#1076;&#1086;&#1074;&#1072;&#1085;&#1080;&#1103; &#1086;&#1082;&#1072;&#1079;&#1072;&#1083;&#1086;&#1089;&#1100;, &#1095;&#1090;&#1086; &amp;#8220;&#1087;&#1086;&#1088;&#1090;&#1080;&#1090;&amp;#8221; &#1082;&#1080;&#1088;&#1080;&#1083;&#1080;&#1094;&#1091; javascript &#1092;&#1091;&#1085;&#1082;&#1094;&#1080;&#1103; escape(). &#1052;&#1085;&#1086;&#1081; &#1073;&#1099;&#1083;&#1080; &#1088;&#1072;&#1089;&#1089;&#1084;&#1086;&#1090;&#1088;&#1077;&#1085;&#1099; &#1088;&#1072;&#1079;&#1085;&#1099;&#1077; &#1074;&#1072;&#1088;&#1080;&#1072;&#1085;&#1090;&#1099; &#1088;&#1077;&#1096;&#1077;&#1085;&#1080;&#1103; &#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084;&#1099;, &#1074; &#1090;&#1086;&#1084; &#1095;&#1080;&#1089;&#1083;&#1077; &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1086;&#1074;&#1072;&#1085;&#1080;&#1077; &#1082;&#1083;&#1072;&#1089;&#1089;&#1072; &lt;strong&gt;UString&lt;/strong&gt; &#1080;&#1079; &#1073;&#1080;&#1073;&#1083;&#1080;&#1086;&#1090;&#1077;&#1082;&#1080; &lt;noindex&gt; &lt;a href="http://icu4r.rubyforge.org/"&gt;ICU4R - ICU Unicode bindings for Ruby&lt;/a&gt;&lt;/noindex&gt;.
 &#1055;&#1086;&#1080;&#1089;&#1082; &#1087;&#1086; &#1088;&#1072;&#1079;&#1083;&#1080;&#1095;&#1085;&#1099;&#1084; &#1092;&#1086;&#1088;&#1091;&#1084;&#1072;&#1084;/&#1073;&#1083;&#1086;&#1075;&#1072;&#1084; &#1076;&#1072;&#1083; &#1089;&#1074;&#1086;&#1081; &#1088;&#1077;&#1097;&#1079;&#1091;&#1083;&#1100;&#1090;&#1072;&#1090;. &#1041;&#1099;&#1083;&#1086; &#1085;&#1072;&#1081;&#1076;&#1077;&#1085;&#1086; &#1091;&#1087;&#1086;&#1084;&#1080;&#1085;&#1072;&#1085;&#1080;&#1077; &#1086; &#1087;&#1086;&#1093;&#1086;&#1078;&#1077;&#1081; &#1089;&#1080;&#1090;&#1091;&#1072;&#1094;&#1080;&#1080; &#1080; &#1088;&#1077;&#1082;&#1086;&#1084;&#1077;&#1085;&#1076;&#1086;&#1074;&#1072;&#1083;&#1086;&#1089;&#1100; &#1080;&#1089;&#1087;&#1086;&#1083;&#1100;&#1079;&#1086;&#1074;&#1072;&#1090;&#1100; encodeURIComponent() &#1074;&#1084;&#1077;&#1089;&#1090;&#1086; escape(). &#1048; &#1101;&#1090;&#1086; &#1076;&#1077;&#1081;&#1089;&#1090;&#1074;&#1080;&#1090;&#1077;&#1083;&#1100;&#1085;&#1086; &#1087;&#1086;&#1084;&#1086;&#1075;&#1083;&#1086;. 
&#1053;&#1077;&#1087;&#1086;&#1089;&#1088;&#1077;&#1076;&#1089;&#1090;&#1074;&#1077;&#1085;&#1085;&#1086; &#1083;&#1077;&#1095;&#1080;&#1090;&#1100; &#1087;&#1088;&#1086;&#1073;&#1083;&#1077;&#1084;&#1091; &#1085;&#1072;&#1076;&#1086; &#1090;&#1072;&#1082;. &#1042; &#1092;&#1072;&#1081;&#1083;&#1077; &lt;em&gt;/app/views/shared/_search.rhtml&lt;/em&gt; &#1089;&#1090;&#1088;&#1086;&#1082;&#1091;&lt;/p&gt;

&lt;pre&gt;
 :with =&gt; "'q=' + escape($F('q'))" -%&gt;
&lt;/pre&gt;

&lt;p&gt;&#1079;&#1072;&#1084;&#1077;&#1085;&#1080;&#1090;&#1100; &#1085;&#1072;&lt;/p&gt;

&lt;pre&gt;
 :with =&gt; "'q=' + encodeURIComponent($F('q'))" -%&gt;
&lt;/pre&gt;

&lt;p&gt;
&lt;img src="/files/before_fix_tmbl.jpg"/&gt;
&lt;/p&gt;

&lt;p&gt;&#1076;&#1086; &#1080;&#1089;&#1087;&#1088;&#1072;&#1074;&#1083;&#1077;&#1085;&#1080;&#1103;&lt;/p&gt;

&lt;p&gt;
&lt;img src="/files/after-fix_tmbl.jpg"/&gt;
&lt;/p&gt;

&lt;p&gt;&#1080; &#1087;&#1086;&#1089;&#1083;&#1077;&amp;#8230;&lt;/p&gt;

&lt;p&gt;&#1058;&#1072;&#1082;&#1078;&#1077; &#1087;&#1088;&#1086;&#1074;&#1077;&#1088;&#1080;&#1083; &#1085;&#1072; &#1082;&#1086;&#1088;&#1088;&#1077;&#1082;&#1090;&#1085;&#1086;&#1089;&#1090;&#1100; &#1088;&#1072;&#1073;&#1086;&#1090;&#1099; Live Search &#1089; &#1082;&#1080;&#1090;&#1072;&#1081;&#1089;&#1082;&#1080;&#1084; &#1103;&#1079;&#1099;&#1082;&#1086;&#1084;, &#1090;&#1077;&#1089;&#1090; &#1087;&#1088;&#1086;&#1096;&#1105;&#1083; &#1091;&#1089;&#1087;&#1077;&#1096;&#1085;&#1086;:&lt;/p&gt;

&lt;p align="left"&gt;
&lt;img src="/files/after_in_chinese_tmbl.jpg"/&gt;
&lt;/p&gt;</description>
      <pubDate>Wed, 02 Aug 2006 00:51:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:1955b0cb-a16b-4241-9903-efa1de701815</guid>
      <author>Cooper</author>
      <link>http://cooper.ezlibrary.com/articles/2006/08/02/live_search_issue</link>
      <category>Typo</category>
      <category>Ruby</category>
      <category>Rails</category>
      <category>typo</category>
      <category>live search</category>
      <category>unicode</category>
      <category>utf-8</category>
      <enclosure length="20161" type="image/jpeg" url="http://cooper.ezlibrary.com/files/after_in_chinese.jpg"/>
    </item>
    <item>
      <title>HowTo Install typo on Red Hat EL3</title>
      <description>&lt;p&gt;Here is a typo installation guide based on the folowing: 
&lt;noindex&gt;
&lt;a rel="nofollow" href="http://www.typosphere.org/trac/wiki/TypoOnFreebsd"&gt; 
http://www.typosphere.org/trac/wiki/TypoOnFreebsd&lt;/a&gt;&lt;/noindex&gt;&lt;/p&gt;

&lt;h2&gt;1. Install Ruby 1.8.4&lt;/h2&gt;

&lt;p&gt;Download and install ruby from the stable release 1.8.4
&lt;noindex&gt;&lt;a href="http://www.ruby-lang.org/en/20020102.html"&gt; http://www.ruby-lang.org/en/20020102.html&lt;/a&gt;&lt;/noindex&gt;&lt;/p&gt;

&lt;h2&gt;2. Install gems&lt;/h2&gt;

&lt;pre&gt;
$cd
$wget http://rubyforge.org/frs/download.php/5207/rubygems-0.8.11.tgz
$tar xvzf rubygems-0.8.11.tgz
$cd rubygems-0.8.11
$ruby setup.rb
&lt;/pre&gt;

&lt;h2&gt;3. Install Rails&lt;/h2&gt;

&lt;pre&gt;
$gem update
$gem install rails --include-dependencies 
&lt;/pre&gt;

&lt;h2&gt;4. Download and install FastCGI Development Kit&lt;/h2&gt;

&lt;pre&gt;
$ wget fastcgi.com/dist/fcgi-2.4.0.tar.gz | tar xfz -
$ copy fcgi-2.4.0 /usr/local/src/fcgi-2.4.0
$ cd /usr/local/src/fcgi-2.4.0
$ ./configure
$ make
$ sudo make install
&lt;/pre&gt;

&lt;h2&gt;5.  Install FCGI bindings for Ruby&lt;/h2&gt;

&lt;pre&gt;
$ sudo gem install fcgi
&lt;/pre&gt;

&lt;h2&gt;6. Download and Install typo&lt;/h2&gt;

&lt;pre&gt;
# /usr/sbin/adduser typo_user
# passwd typo_user 
$ svn checkout svn://leetsoft.com/typo/trunk typo
$ cp -R typo /home/typo_user/websites/www.mysite.com
&lt;/pre&gt;

&lt;h2&gt;7. Configuring Typo&lt;/h2&gt;

&lt;p&gt;Replace &lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;/usr/bin/env ruby &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;with &lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;/usr/local/bin/ruby &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;in &lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;public/dispatch.fcgi&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt; and &lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_default "&gt;public/dispatch.rb&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;.&lt;/p&gt;

&lt;h2&gt;8. Database&lt;/h2&gt;

&lt;h3&gt;8.1 Install Ruby/MySQL&lt;/h3&gt;

&lt;p&gt;&lt;noindex&gt;(http://www.tmtm.org/en/mysql/ruby/)&lt;/noindex&gt;&lt;/p&gt;

&lt;h3&gt;8.2 Create database in MySQL&lt;/h3&gt;

&lt;pre&gt;
mysql -p
create database typo_user_typo CHARACTER SET utf8;
grant all on typo_user_typo.* to 'typo_user'@'localhost' \
identified by 'typo_password';
flush privileges;
use typo_user_typo;
source /home/typo_user/websites/www.mysite.com/db/schema.mysql.sql;
&lt;/pre&gt;

&lt;p&gt;Edit config/database.yml:&lt;/p&gt;

&lt;pre&gt;
login: &amp;login
  adapter: mysql
  host: localhost
  username: typo_user
  password: typo_password
  socket: /var/lib/mysql/mysql.sock
  encoding: utf8

development:
  database: typo_user_typo
  &lt;&lt;: *login

test:
  database: typo_user_typo
  &lt;&lt;: *login

production:
  database: typo_user_typo
  &lt;&lt;: *login
&lt;/pre&gt;

&lt;h3&gt;8.3 Update the database-schema&lt;/h3&gt;

&lt;pre&gt;
$rake migrate
&lt;/pre&gt;

&lt;h2&gt;9. Lighttpd&lt;/h2&gt;

&lt;p&gt;Download from 
&lt;noindex&gt;&lt;a href="http://www.lighttpd.net/download/lighttpd-1.4.11.tar.gz"&gt;
http://www.lighttpd.net/download/lighttpd-1.4.11.tar.gz&lt;/a&gt;&lt;/noindex&gt;
Extract to /usr/local/src/lighttpd-1.4.11&lt;/p&gt;

&lt;pre&gt;
$ cd /usr/local/src/lighttpd-1.4.11
$ ./configure
$ make
$ su -
# make install
# exit
&lt;/pre&gt;

&lt;p&gt;Copy config-file from /home/typo_user/websites/www.mysite.com/config to  /etc/lighttpd/lighttpd.conf and then edit:&lt;/p&gt;

&lt;pre&gt;
server.pid-file             = "/var/run/typo-typo_user.pid"
server.port                 = 3000
server.bind                 = "127.0.0.1"
#server.event-handler        = "freebsd-kqueue"
server.name                 = "www.mysite.com"

server.modules              = ( "mod_rewrite", "mod_fastcgi", "mod_accesslog" )
server.indexfiles           = ( "dispatch.fcgi" )
server.document-root        = "/home/typo_user/websites/www.mysite.com/public"
server.error-handler-404    = "/dispatch.fcgi"
server.errorlog             = "/home/typo_user/websites/www.mysite.com/log/error.log"
accesslog.filename          = "/home/typo_user/websites/www.mysite.com/log/access.log"

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

#### fastcgi module
fastcgi.server =  (
   ".fcgi" =&gt; (
        "typo" =&gt; (
               "min-procs" =&gt; 4,
               "max-procs" =&gt; 4,
               "socket" =&gt; "/home/typo_user/websites/www.mysite.com/tmp/typo-typo_user.socket",
               "bin-path" =&gt; "/home/typo_user/websites/www.mysite.com/public/dispatch.fcgi",
               "bin-environment" =&gt; ("RAILS_ENV" =&gt; "production" ),
               "idle-timeout" =&gt; 120
                )
           )
&lt;/pre&gt;

&lt;p&gt;Copy /usr/local/src/lighttpd-1.4.11/doc/rc.lighttpd.redhat to /etc/rc.d/init.d/lighttpd. 
Replace the line&lt;/p&gt;

&lt;p&gt;lighttpd=&amp;#8221;/usr/sbin/lighttpd&amp;#8221; &lt;/p&gt;

&lt;p&gt;with&lt;/p&gt;

&lt;p&gt;lighttpd=&amp;#8221;/usr/local/sbin/lighttpd&amp;#8221; &lt;/p&gt;

&lt;p&gt;Start lighttpd server  /etc/rc.d/init.d/lighttpd start&lt;/p&gt;</description>
      <pubDate>Tue, 04 Jul 2006 14:52:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:58b61e48-29f9-4b3e-9694-e370616ade2d</guid>
      <author>Cooper</author>
      <link>http://cooper.ezlibrary.com/articles/2006/07/04/typo_on_RHEL3</link>
      <category>Typo</category>
      <category>Ruby</category>
      <category>Linux</category>
      <category>typo</category>
      <category>ruby</category>
      <category>linux</category>
      <category>redhat</category>
    </item>
  </channel>
</rss>
