晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
| DIR:/opt/alt/ruby18/lib64/ruby/gems/1.8/doc/rack-1.6.1/rdoc/classes/Rack/ |
| Current File : //opt/alt/ruby18/lib64/ruby/gems/1.8/doc/rack-1.6.1/rdoc/classes/Rack/File.html |
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Class: Rack::File</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
<script type="text/javascript">
// <![CDATA[
function popupCode( url ) {
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
}
function toggleCode( id ) {
if ( document.getElementById )
elem = document.getElementById( id );
else if ( document.all )
elem = eval( "document.all." + id );
else
return false;
elemStyle = elem.style;
if ( elemStyle.display != "block" ) {
elemStyle.display = "block"
} else {
elemStyle.display = "none"
}
return true;
}
// Make codeblocks hidden by default
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
// ]]>
</script>
</head>
<body>
<div id="classHeader">
<table class="header-table">
<tr class="top-aligned-row">
<td><strong>Class</strong></td>
<td class="class-name-in-header">Rack::File</td>
</tr>
<tr class="top-aligned-row">
<td><strong>In:</strong></td>
<td>
<a href="../../files/lib/rack/file_rb.html">
lib/rack/file.rb
</a>
<br />
</td>
</tr>
<tr class="top-aligned-row">
<td><strong>Parent:</strong></td>
<td>
Object
</td>
</tr>
</table>
</div>
<!-- banner header -->
<div id="bodyContent">
<div id="contextContent">
<div id="description">
<p>
<a href="File.html">Rack::File</a> serves files below the <tt>root</tt>
directory given, according to the path info of the <a
href="../Rack.html">Rack</a> request. e.g. when <a
href="File.html#M000260">Rack::File.new</a>("/etc") is used, you
can access ‘passwd’ file as <a
href="http://localhost:9292/passwd">localhost:9292/passwd</a>
</p>
<p>
Handlers can detect if bodies are a <a href="File.html">Rack::File</a>, and
use mechanisms like sendfile on the <tt>path</tt>.
</p>
</div>
</div>
<div id="method-list">
<h3 class="section-bar">Methods</h3>
<div class="name-list">
<a href="#M000262">_call</a>
<a href="#M000261">call</a>
<a href="#M000264">each</a>
<a href="#M000260">new</a>
<a href="#M000263">serving</a>
</div>
</div>
</div>
<!-- if includes -->
<div id="section">
<div id="constants-list">
<h3 class="section-bar">Constants</h3>
<div class="name-list">
<table summary="Constants">
<tr class="top-aligned-row context-row">
<td class="context-item-name">ALLOWED_VERBS</td>
<td>=</td>
<td class="context-item-value">%w[GET HEAD OPTIONS]</td>
</tr>
<tr class="top-aligned-row context-row">
<td class="context-item-name">ALLOW_HEADER</td>
<td>=</td>
<td class="context-item-value">ALLOWED_VERBS.join(', ')</td>
</tr>
<tr class="top-aligned-row context-row">
<td class="context-item-name">F</td>
<td>=</td>
<td class="context-item-value">::File</td>
</tr>
</table>
</div>
</div>
<div id="aliases-list">
<h3 class="section-bar">External Aliases</h3>
<div class="name-list">
<table summary="aliases">
<tr class="top-aligned-row context-row">
<td class="context-item-name">path</td>
<td>-></td>
<td class="context-item-value">to_path</td>
</tr>
</table>
</div>
</div>
<div id="attribute-list">
<h3 class="section-bar">Attributes</h3>
<div class="name-list">
<table>
<tr class="top-aligned-row context-row">
<td class="context-item-name">cache_control</td>
<td class="context-item-value"> [RW] </td>
<td class="context-item-desc"></td>
</tr>
<tr class="top-aligned-row context-row">
<td class="context-item-name">path</td>
<td class="context-item-value"> [RW] </td>
<td class="context-item-desc"></td>
</tr>
<tr class="top-aligned-row context-row">
<td class="context-item-name">root</td>
<td class="context-item-value"> [RW] </td>
<td class="context-item-desc"></td>
</tr>
</table>
</div>
</div>
<!-- if method_list -->
<div id="methods">
<h3 class="section-bar">Public Class methods</h3>
<div id="method-M000260" class="method-detail">
<a name="M000260"></a>
<div class="method-heading">
<a href="File.src/M000260.html" target="Code" class="method-signature"
onclick="popupCode('File.src/M000260.html');return false;">
<span class="method-name">new</span><span class="method-args">(root, headers={}, default_mime = 'text/plain')</span>
</a>
</div>
<div class="method-description">
</div>
</div>
<h3 class="section-bar">Public Instance methods</h3>
<div id="method-M000262" class="method-detail">
<a name="M000262"></a>
<div class="method-heading">
<a href="File.src/M000262.html" target="Code" class="method-signature"
onclick="popupCode('File.src/M000262.html');return false;">
<span class="method-name">_call</span><span class="method-args">(env)</span>
</a>
</div>
<div class="method-description">
</div>
</div>
<div id="method-M000261" class="method-detail">
<a name="M000261"></a>
<div class="method-heading">
<a href="File.src/M000261.html" target="Code" class="method-signature"
onclick="popupCode('File.src/M000261.html');return false;">
<span class="method-name">call</span><span class="method-args">(env)</span>
</a>
</div>
<div class="method-description">
</div>
</div>
<div id="method-M000264" class="method-detail">
<a name="M000264"></a>
<div class="method-heading">
<a href="File.src/M000264.html" target="Code" class="method-signature"
onclick="popupCode('File.src/M000264.html');return false;">
<span class="method-name">each</span><span class="method-args">() {|part| ...}</span>
</a>
</div>
<div class="method-description">
</div>
</div>
<div id="method-M000263" class="method-detail">
<a name="M000263"></a>
<div class="method-heading">
<a href="File.src/M000263.html" target="Code" class="method-signature"
onclick="popupCode('File.src/M000263.html');return false;">
<span class="method-name">serving</span><span class="method-args">(env)</span>
</a>
</div>
<div class="method-description">
</div>
</div>
</div>
</div>
<div id="validator-badges">
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
</div>
</body>
</html> |