Skip to content

Commit

Permalink
Complete index.html
Browse files Browse the repository at this point in the history
  • Loading branch information
alioth310 committed Aug 10, 2013
1 parent 5156fb3 commit b0badfe
Show file tree
Hide file tree
Showing 2 changed files with 286 additions and 50 deletions.
197 changes: 197 additions & 0 deletions index.html
@@ -0,0 +1,197 @@
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8">
<title>索引页 - Introduction to Tornado 中文翻译</title>
<meta name="author" content="你像从前一样">

<link href="./static/css/styles.css" rel="stylesheet">
</head>

<body>
<div class="container">

<div class="cover">
<img src="./static/images/cover.jpg" width="420" alt="封面" />
</div>

<div class="menu">
<h1>目&nbsp;&nbsp;&nbsp;&nbsp;录</h1>

<ul>
<li><a href="./ch1.html">第一章:引言</a></li>
<ul>
<li><a href="./ch1.html#ch1-1">1.1 Tornado是什么?</a></li>
<ul>
<li><a href="./ch1.html#ch1-1-1">1.1.1 Tornado入门</a></li>
<li><a href="./ch1.html#ch1-1-2">1.1.2 社区和支持</a></li>
</ul>
<li><a href="./ch1.html#ch1-2">1.2 简单的Web服务</a></li>
<ul>
<li><a href="./ch1.html#ch1-2-1">1.2.1 Hello Tornado</a></li>
<ul>
<li><a href="./ch1.html#ch1-2-1-1">1.2.1.1 参数handlers</a></li>
<li><a href="./ch1.html#ch1-2-1-2">1.2.1.2 使用正则表达式指定路径</a></li>
</ul>
<li><a href="./ch1.html#ch1-2-2">1.2.2 字符串服务</a></li>
<li><a href="./ch1.html#ch1-2-3">1.2.3 关于RequestHandler的更多知识</a></li>
<ul>
<li><a href="./ch1.html#ch1-2-3-1">1.2.3.1 HTTP方法</a></li>
<li><a href="./ch1.html#ch1-2-3-2">1.2.3.2 HTTP状态码</a></li>
</ul>
<li><a href="./ch1.html#ch1-2-4">1.2.4 下一步</a></li>
</ul>
</ul>

<li><a href="./ch2.html">第二章:表单和模板</a></li>
<ul>
<li><a href="./ch2.html#ch2-1">2.1 简单示例:Poem Maker Pro</a></li>
<ul>
<li><a href="./ch2.html#ch2-1-1">2.1.1 渲染模板</a></li>
<li><a href="./ch2.html#ch2-1-2">2.1.2 填充</a></li>
</ul>
<li><a href="./ch2.html#ch2-2">2.2 模板语法</a></li>
<ul>
<li><a href="./ch2.html#ch2-2-1">2.2.1 填充表达式</a></li>
<li><a href="./ch2.html#ch2-2-2">2.2.2 控制流语句</a></li>
<li><a href="./ch2.html#ch2-2-3">2.2.3 在模板中使用函数</a></li>
</ul>
<li><a href="./ch2.html#ch2-3">2.3 复杂示例:The Alpha Munger</a></li>
<ul>
<li><a href="./ch2.html#ch2-3-1">2.3.1 它如何工作</a></li>
<li><a href="./ch2.html#ch2-3-2">2.3.2 提供静态文件</a></li>
<ul>
<li><a href="./ch2.html#ch2-3-2-1">2.3.2.1 设置静态路径</a></li>
<li><a href="./ch2.html#ch2-3-2-2">2.3.2.2 使用static_url生成静态URL</a></li>
</ul>
<li><a href="./ch2.html#ch2-3-3">2.3.3 模板的下一步</a></li>
</ul>
</ul>

<li><a href="./ch3.html">第三章:模板扩展</a></li>
<ul>
<li><a href="./ch3.html#ch3-1">3.1 块和替换</a></li>
<ul>
<li><a href="./ch3.html#ch3-1-1">3.1.1 块基础</a></li>
<li><a href="./ch3.html#ch3-1-2">3.1.2 模板练习:Burt's Book</a></li>
<li><a href="./ch3.html#ch3-1-3">3.1.3 自动转义</a></li>
</ul>
<li><a href="./ch3.html#ch3-2">3.2 UI模块</a></li>
<ul>
<li><a href="./ch3.html#ch3-2-1">3.2.1 基础模块使用</a></li>
<li><a href="./ch3.html#ch3-2-2">3.2.2 模块深入</a></li>
<li><a href="./ch3.html#ch3-2-3">3.2.3 嵌入JavaScript和CSS</a></li>
</ul>
<li><a href="./ch3.html#ch3-3">3.3 总结</a></li>
</ul>

<li><a href="./ch4.html">第四章:数据库</a></li>
<ul>
<li><a href="./ch4.html#ch4-1">4.1 使用PyMongo进行MongoDB基础操作</a></li>
<ul>
<li><a href="./ch4.html#ch4-1-1">4.1.1 创建连接</a></li>
<li><a href="./ch4.html#ch4-1-2">4.1.2 处理文档</a></li>
<li><a href="./ch4.html#ch4-1-3">4.1.3 MongoDB文档和JSON</a></li>
</ul>
<li><a href="./ch4.html#ch4-2">4.2 一个简单的持久化Web服务</a></li>
<ul>
<li><a href="./ch4.html#ch4-2-1">4.2.1 只读字典</a></li>
<li><a href="./ch4.html#ch4-2-2">4.2.2 写字典</a></li>
</ul>
<li><a href="#ch4-3">4.3 Burt's Books</a></li>
<ul>
<li><a href="./ch4.html#ch4-3-1">4.3.1 读取书籍(从数据库)</a></li>
<li><a href="./ch4.html#ch4-3-2">4.3.2 编辑和添加书籍</a></li>
<ul>
<li><a href="./ch4.html#ch4-3-2-1">4.3.2.1 渲染编辑表单</a></li>
<li><a href="./ch4.html#ch4-3-2-2">4.3.2.2 从数据库中取出书籍信息</a></li>
<li><a href="./ch4.html#ch4-3-2-3">4.3.2.3 保存到数据库中</a></li>
</ul>
</ul>
<li><a href="./ch4.html#ch4-4">4.4 MongoDB:下一步</a></li>
</ul>

<li><a href="./ch5.html">第五章:异步Web服务</a></li>
<ul>
<li><a href="./ch5.html#ch5-1">5.1 异步Web请求</a></li>
<ul classs="index-section">
<li><a href="./ch5.html#ch5-1-1">5.1.1 从同步开始</a></li>
<li><a href="./ch5.html#ch5-1-2">5.1.2 阻塞的困扰</a></li>
<li><a href="./ch5.html#ch5-1-3">5.1.3 基础异步调用</a></li>
<li><a href="./ch5.html#ch5-1-4">5.1.4 异步装饰器和finish方法</a></li>
<li><a href="./ch5.html#ch5-1-5">5.1.5 异步生成器</a></li>
<li><a href="./ch5.html#ch5-1-6">5.1.6 异步操作总结</a></li>
</ul>
<li><a href="./ch5.html#ch5-2">5.2 使用Tornado进行长轮询</a></li>
<ul>
<li><a href="./ch5.html#ch5-2-1">5.2.1 长轮询的好处</a></li>
<li><a href="./ch5.html#ch5-2-2">5.2.2 示例:实时库存报告</a></li>
<li><a href="./ch5.html#ch5-2-3">5.2.3 长轮询的缺陷</a></li>
</ul>
<li><a href="./ch5.html#ch5-3">5.3 Tornado与WebSockets</a></li>
<ul>
<li><a href="./ch5.html#ch5-3-1">5.3.1 Tornado的WebSocket模块</a></li>
<li><a href="./ch5.html#ch5-3-2">5.3.2 示例:使用WebSockets的实时库存</a></li>
<li><a href="./ch5.html#ch5-3-3">5.3.3 WebSockets的未来</a></li>
</ul>
</ul>

<li><a href="./ch6.html">第六章:编写安全应用</a></li>
<ul>
<li><a href="./ch6.html#ch6-1">6.1 Cookie漏洞</a></li>
<ul>
<li><a href="./ch6.html#ch6-1-1">6.1.1 Cookie伪造</a></li>
<li><a href="./ch6.html#ch6-1-2">6.1.2 安全Cookies</a></li>
<ul>
<li><a href="./ch6.html#ch6-1-2-1">6.1.2.1 使用安全Cookies</a></li>
<li><a href="./ch6.html#ch6-1-2-2">6.1.2.2 HTTP-Only和SSL Cookies</a></li>
</ul>
</ul>
<li><a href="./ch6.html#ch6-2">6.2 请求漏洞</a></li>
<ul>
<li><a href="./ch6.html#ch6-2-1">6.2.1 剖析一个XSRF</a></li>
<li><a href="./ch6.html#ch6-2-2">6.2.2 防范请求伪造</a></li>
<li><a href="./ch6.html#ch6-2-3">6.2.3 使用Tornado的XSRF保护</a></li>
<ul>
<li><a href="./ch6.html#ch6-2-3-1">6.2.3.1 XSRF令牌和AJAX请求</a></li>
</ul>
</ul>
<li><a href="./ch6.html#ch6-3">6.3 用户验证</a></li>
<ul>
<li><a href="./ch6.html#ch6-3-1">6.3.1 示例:欢迎回来</a></li>
<li><a href="./ch6.html#ch6-3-2">6.3.2 authenticated装饰器</a></li>
<ul>
<li><a href="./ch6.html#ch6-3-2-1">6.3.2.1 current_user属性</a></li>
<li><a href="./ch6.html#ch6-3-2-2">6.3.2.2 login_url设置</a></li>
</ul>
</ul>
<li><a href="./ch6.html#ch6-4">6.4 总结</a></li>
</ul>

<li><a href="./ch7.html">第七章:外部服务认证</a></li>
<ul>
<li><a href="./ch7.html#ch7-1">7.1 Tornado的auth模块</a></li>
<ul>
<li><a href="./ch7.html#ch7-1-1">7.1.1 认证流程</a></li>
<li><a href="./ch7.html#ch7-1-2">7.1.2 异步请求</a></li>
</ul>
<li><a href="./ch7.html#ch7-2">7.2 示例:登录Twitter</a></li>
<li><a href="./ch7.html#ch7-3">7.3 示例:Facebook认证和Graph API</a></li>
</ul>

<li><a href="./ch8.html">第八章:部署Tornado</a></li>
<ul>
<li><a href="./ch8.html#ch8-1">8.1 运行多个Tornado实例的原因</a></li>
<li><a href="./ch8.html#ch8-2">8.2 使用Nginx作为反向代理</a></li>
<ul>
<li><a href="./ch8.html#ch8-2-1">8.2.1 Nginx基本配置</a></li>
<li><a href="./ch8.html#ch8-2-2">8.2.2 Nginx的SSL解密</a></li>
</ul>
<li><a href="./ch8.html#ch8-3">8.3 使用Supervisor监控Tornado进程</a></li>
</ul>
</ul>

</div>
</div>
</body>
</html>
139 changes: 89 additions & 50 deletions static/css/styles.css
Expand Up @@ -9,85 +9,85 @@ body {
margin: 10px 30px;
}

.clearfix:before, .clearfix:after {
content: "";
display: table;
}

.clearfix:after {
clear: both;
overflow: hidden;
}

.clearfix {
zoom: 1; /* IE < 8 */
}


/* translation-sidebar start */
.sidebar {
float: left;
width: 180px;
float: left;
width: 180px;
}

.indextable {
position: fixed;
width: 175px;
padding-top: 3px;
*padding-top: 20px;
work-break: normal;
white-space: normal;
font-size: 90%;
position: fixed;
width: 175px;
padding-top: 3px;
*padding-top: 20px;
work-break: normal;
white-space: normal;
font-size: 90%;
}

ul.index-chapter {
margin-left: -35px;
*margin-left: 0;
margin-left: -35px;
*margin-left: 0;
}

ul.index-section {
margin-left: -25px;
*margin-left: 12px;
margin-left: -25px;
*margin-left: 12px;
}

ul.index-chapter li {
list-style: none outside none;
margin-left: 0;
list-style: none outside none;
margin-left: 0;
}

ul.index-section li {
list-style: square outside none;
margin-left: 5px;
list-style: square outside none;
margin-left: 5px;
}

ul.index-chapter li a, ul.index-chapter li a:visited {
color: #777;
color: #777;
}

ul.index-section li a, ul.index-section li a:visited {
color: #000;
color: #000;
}

ul.index-chapter li a:hover, ul.index-section li a:hover {
color: #0095C4;
text-decoration: underline;
color: #0095C4;
text-decoration: underline;
}

ul.index-chapter li a.current-chapter, ul.index-chapter li a.current-chapter:visited {
color: #000;
color: #000;
}

ul.index-chapter li a.current-chapter:hover {
color: #0095C4;
color: #0095C4;
}
/* translation-sidebar end */

.article {
margin-left: 180px;
border-left: 1px solid #888;
padding: 0 20px;
}

.footer {
text-align: center;
margin-top: 40px;
}

.clearfix:before, .clearfix:after {
content: "";
display: table;
}

.clearfix:after {
clear: both;
overflow: hidden;
}

.clearfix {
zoom: 1; /* IE < 8 */
/* translation-article start */
.article {
margin-left: 180px;
border-left: 1px solid #888;
padding: 0 20px;
}

h1 {
Expand Down Expand Up @@ -138,17 +138,16 @@ a:hover {
}

.headerlink {
margin-left: 5px;
margin-left: 5px;
}

a.headerlink {
color: #fff;
color: #fff;
}

a.headerlink:hover {
background: #fff;
color: #BDB76A;

background: #fff;
color: #BDB76A;
}

.figure {
Expand Down Expand Up @@ -261,3 +260,43 @@ pre {
.indentation {
margin-left: 25px;
}
/* translation-article end */


/* translation-footer start */
.footer {
text-align: center;
margin-top: 40px;
}
/* translation-footer end */


/* index start */
.cover {
float: left;
width: 425px;
position: fixed;
}

.menu {
margin-left: 425px;
}

.menu h1 {
text-align: center;
}

.menu ul li {
font-size: 15px;
margin-bottom: 5px;
}

.menu ul li a, .menu ul li a:visited {
color: #333;
}

.menu ul li a:hover {
color: #0095C4;
text-decoration: underline;
}
/* index end */

0 comments on commit b0badfe

Please sign in to comment.