技术解析

为什么我感觉 NGINX 文档很枯燥乏味?
0
1975-02-21 04:19:57
idczone
最近想补充一下 web 服务器方面的知识,以免配置开发环境的时候一脸懵逼。自然就想拿 NGINX 练炼手,看到官方文档尽是些参数介绍,真是不知所云。很怀疑是我野路子出身,知识面太窄,还是这文档本身就很乏味?抗投诉服务器想了解这方面的知识应该从哪里入手呢?
你的感觉是没错的
nginx 的文档是给“已经知道 web 服务器怎么回事,但想知道具体到 nginx 上应该怎么配置”的人看的

网上查了一些资料,感觉都是开发 Nginx 相关的内容。涉及到使用也是这个参数怎么配置,至于为什么使用这些参数,这些参数有哪些应用场景的介绍很少。

你到底是看不懂还是乏味?
什么说明书看着都乏味吧,难道还能看出花来

想有趣看小说去

你感觉对了+1
补充知识不如尝试拿 nginx 实现几个具体的需求
这样文档才啃的下去
单独啃文档没办法不乏味

nginx 是 HTTP 的一个优秀的实现,文档当然只讲这个是什么,而不是讲这个为什么
你需要补的是这个 HTTP: The Definitive Guide
或者,直接啃 RFC ?

说明书当然乏味,我的意思是其他一些技术栈的文档都有一些针对新手的 demo 项目,以及一些针对当前技术点的背景介绍。大部分内容我还真看不懂,我是应该对 Nginx 文档死磕呢,还是应该学一些网络方面的知识后,再来死磕呢?

Take it easy, read it more time.

先学《计算机网络》,再看 NGINX 文档,不懂的查阅《 HTTP: The Definitive Guide 》

就是配置 PHP 环境的时候,感觉那些参数不知所云,所以才查看文档的。
网络这块比较薄弱,感觉单独看书,印象不够深刻,所以想练手。练手的时候,基础又挡住了前进的步伐。感觉像是卡住了,呵呵。

直接学经典的《计算机网络 - 自顶向下方法》,这门课并没有前置课程。。高中毕业生都可以开始学习

看样子只能一边练手,一边补基础,这样螺旋前进了。很考验的人的耐心啊!

是这样的,它的文档只简单说了是什么,而绝口不提为什么,什么情况需怎样调整。
比如
proxy_buffers 8 4k|8k;
文档只是一句话:
Sets the number and size of the buffers used for reading a response from the proxied server, for a single connection. By default, the buffer size is equal to one memory page. This is either 4K or 8K, depending on a platform.
你可以会想这个 buffer 要怎么调?和后端文件大小和网速有什么关系?超出会用磁盘缓存吗还是卡住?为什么这块内存是用一个数量和一个大小来表示?怎么就不直接一个内存大小?总内存是二者相乘吗?

觉得枯燥可能是因为你还不熟 nginx ?我一般遇到 nginx 相关问题就去查官方文档,基本都能找到答案。

我也想脆厚脸皮问一下各位。
If proxy_pass is specified without a URI, the request URI is passed to the server in the same form as sent by a client when the original request is processed, or the full normalized request URI is passed when processing the changed URI:
location /some/path/ {
proxy_pass http://127.0.0.1;
}
这段反向代理的域名匹配,该怎么翻译。。 normalized request URI 是个什么?
源文档地址 http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass

刚才回复频繁,暂停回复 1800s ,好古怪的规定!
多谢推荐,刚看了亚马逊的评论,感觉挺适合我的。平时这样的书名还真不敢下手,也就敢看《图解 Http 》这类书。
就是你说的这种感觉。文档中稍微多提供一点信息,我就可以针对性的决定这个技术点是优先学习,还是应该先放一放。或者向周边的知识点拓展开来。现在这种文档让人无法知道轻重缓急。
可能我的基础比较薄弱一点,对一些术语不能理解其内涵。

首先熟悉一下 url 的概念, url 由 host 和 uri 组成。所以这段的意思就是不指定 uri 的话客户端传来的 uri 部分会自动添加到 host 后面,或者在处理更改的 uri 时自动拼接成合法的 url 。
参考 rewirte 部分

因为那个是 reference manual, 不是 user guide.

这类说明书是让你当帮助手册而不是教科书来看的。。

ng 是 http 的实现,文档当然是介绍怎么使用了,没办法一个个展开去详细说,就像你买了部车,会给你汽车说明书,你看见那个汽车说明书里面有说发动机构造、为什么要这么构造等等吗

先谢谢前辈!不过恕我愚昧,我表示对 “ url 由 host 和 uri 组成” 有质疑......这儿的 uri 仅是代表了 host 之后的路径吧?看来,我该把《 http 权威指南》列在下个学习计划当中了......

文档只有遇到问题了去看才看得下去,没事盯着文档看你以为小说吗

Nginx 文档确实比较烂...

那应该庆幸不用背诵全文…

去读 ngx_http_core_module 的参考文档,末尾讲了 nginx 里$uri ,$host 等的定义

毕竟老毛子的东西 写详细了不是他们风格

楼主不用怕教材看不懂,其实很多听着很大部头的书也就是本科教材罢了,名气大是因为写得好不是因为难看懂。况且以国内的情况看,科班出身的学生往往也是高中文化程度自学出来的(

谢谢,已经清楚啦。
$uri
current URI in request, normalized
The value of $uri may change during request processing, e.g. when doing internal redirects, or when using index files.

还真是这样,主要是被《计算机程序设计艺术》这类书吓到了。看到有人一列书单,就感觉自己爆受打击。书单的其中一本书,感觉就够我看一年,真不知道是他们看书时间多还是理解力超强。

TAOCP 毕竟不是本科教材啊……很多大牛都没看过的,印象中《编程人生》里采访的对象至少一半都没看过。。。那些被访者都是 Erlang 之父之类的人物。


你需要的不是去看文档,而是教材
这是两码事

+1
就是,没有想要实现的需求,干啃,能啃睡着了。。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服