博学笃行·盛德日新

永福的博客

最后更新:

就像每天的早高峰, 我们都来不及去感慨人潮有多拥挤, 就被无数的人推着向前走. 这就是生活啊! 它由不得我们犹豫, 容不下我们迟疑, 我们来到这个世界, 就要面对无数的无奈和艰难的时刻. 能哭着吃饭的人, 一定能坚强地活下去. 不要让自己配不上当初的野心, 还辜负了曾经遭遇过的苦难.

一、proxy_pass的nginx官方指南 nginx中有两个模块都有proxy_pass指令。 - ngx_http_proxy_module的proxy_pass: 语法: proxy_pass URL; 场景: location, if in location, limit_except 说明: 设置后端代理服务器的协议(protocol)和地址(address),以及location中可以匹配的一个可选的URI。协议可以是"http"或"https"。地址可以是一个域名或ip地址和端口,或者一个 unix-domain socket 路径。 详见官方文档: http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass URI的匹配,本文第四部分重点讨论。 ngx_stream_proxy_module的proxy_pass: 语法: proxy_pass address; 场景: server 说明: 设置后端代理服务器的地址。这个地址(address)可以是一个域名或ip地址和端口,或者一个 unix-domain socket路径。 详见官方文档: http://nginx.org/en/docs/stream/ngx_stream_proxy_module.html#proxy_pass 二、两个proxy_pass的关系和区别 在两个模块中,两个proxy_pass都是用来做后端代理的指令。 ngx_stream_proxy_module模块的proxy_pass指令只能在server段使用使用, 只需要提供域名或ip地址和端口。可以理解为端口转发,可以是tcp端口,也可以是udp端口。 ngx_http_proxy_module模块的proxy_pass指令需要在location段,location中的if段,limit_except段中使用,处理需要提供域名或ip地址和端口外,还需要提供协议,如»http»或»https»,还有一个可选的uri可以配置。 三、proxy_pass的具体用法 ngx_stream_proxy_module模块的proxy_pass指令 server { listen 127.0.0.1:12345; proxy_pass 127.0.0.1:8080; } server { listen 12345; proxy_connect_timeout 1s; proxy_timeout 1m; proxy_pass example.com:12345; } server { listen 53 udp; proxy_responses 1; proxy_timeout 20s; proxy_pass dns.

前言 本文解释了怎么对nginx和后端服务器组或代理服务器进行加密http通信。 内容提纲 前提条件 获取SSL服务端证书 获取SSL客户端证书 配置nginx 配置后端服务器 完整示例 前提条件 nginx源码或nginx plus源码 一个代理服务器或一个代理服务器组 SSL证书和私钥 获取SSL服务端证书 你可以从一个可信证书颁发机构(CA)购买一个服务器证书, 或者你可以使用openssl库创建一个内部CA, 并给自己颁发证书。这个服务器端证书和私钥需要部署在后端的每一个服务器上。 获取SSL客户端证书 nignx使用一个SSL客户端证书来对后端服务器组来标识自己。这个客户端证书必须是被一个可信CA签名的,并且和相匹配的私钥一起部署在nginx中。 你还需要在后端服务器上配置好所有的来源SSL连接都需要客户端证书,并信任这个CA颁发的nginx客户端证书。 然后当nginx连接后端时,将提供客户端证书,并且后端将会接收这个连接。 配置nginx 首先,改变相应URL到支持SSL连接的后端服务器组。在nginx的配置文件中,指明proxy_pass指令在代理服务器或后端服务器组中使用»https»协议: location /upstream { proxy_pass https://backend.example.com; } 增加客户端证书和私钥,用于验证nginx和每个后端服务器。使用proxy_ssl_certificate 和 proxy_ssl_certificate_key指令: location /upstream { proxy_pass https://backend.example.com; proxy_ssl_certificate /etc/nginx/client.pem; proxy_ssl_certificate_key /etc/nginx/client.key } 如果你在后端服务器使用了自签名证书或者使用了自建CA,你需要配置proxy_ssl_trusted_certificate. 这个文件必须是PEM格式的。另外还可以配置proxy_ssl_verify和proxy_ssl_verfiy_depth指令, 用来验证安全证书: location /upstream { ... proxy_ssl_trusted_certificate /etc/nginx/trusted_ca_cert.crt; proxy_ssl_verify on; proxy_ssl_verify_depth 2; ... } 每一个新的SSL连接都需要在服务端和客户端进行一个完整的SSL握手过程,这非常耗费CPU计算资源。为了是nignx代理预先协商连接参数,使用一种简略的握手过程,增加proxy_ssl_session_reuse指令配置: location /upstream { .

一个tmux session可以包括很多个tumx window,一个tmux window下也可以有很多tmux pane。 这篇文章主要讲这session、window、pane之间的操作。 一、使用会话(session) | 命令 | 说明 | | :- | :- | | tmux new-session -s basic | 创建一个命名为basic的session | | tmux new -s basic | 创建一个命名为basic的session, 命令简化 | | PREFIX d | 分离(datach)一个session | | tmux list-sessions 或 tmux ls | 展示当前存在的session | | tmux attach -t second_session | 重新连接已有的会话 | | tmux kill-session -t second_session | 杀死会话 | 二、使用窗口(window) 一般我们创建一个会话(session)时,我们看到的那个终端提示符界面,就是我们的第一个窗口(window),即默认创建的这个窗口。 | 命令 | 说明 | | :- | :- | | tmux new -s basic -n shell | 创建一个命名为basic的session,并把第一个窗口命名为shell | | PREFIX c | 在当前会话创建一个新窗口 | | PREFIX , | 重命名当前窗口 | | PREFIX n | 窗口切换,切换到下一个(next)窗口 | | PREFIX p | 窗口切换,切换到上一个(previous)窗口 | | PREFIX 0 | 窗口切换,切换到内部编号为0的窗口 | | PREFIX 1 | 窗口切换,切换到内部编号为1的窗口 | | PREFIX f | 窗口切换,查找find窗口 | | PREFIX w | 窗口切换,显示一个可视化的窗口列表 | | PREFIX & | 关闭窗口(&=et=exit) |

朋友Spencer极力推荐的一本书,所以赶紧在kindle里搜了来。看了第一章,实在看不下去了,又不是太好意思说自己看不懂(怕被说是疯子呀!),硬着头皮开始啃第二章。顺便微信问Spencer,是这本外国人写的讲那些艺术家/诗人是疯子的书么?才知道看错一本了。原来推荐的是《天才在左,疯子在右》,作者是高铭。 看完后高铭著的这本《天才在左,疯子在右》,让我想起了那些哲学书,如论语、柏拉图等,全书是一些对话的记载,也许叫»疯人对话录»也是个契合的标题。天才和疯子在哪里?在左在右?为什么天才在左,疯子在右?天才在右,疯子在左呢?作者在每一篇都强调使用了录音,这是作者的写作手法,让对话看起来更真实。但是我们作为读者,应该要清醒的认识到,这些都是经过后期加工的。1. 真正的谈话不会这么顺利,2. 应该也会隐去不少的对话内容,3. 内容的整理和句子的编排,总会含有作者个人的思想倾向在里面。做一个清醒的读者,不要进入书中的那些“精神病人”的牛角尖里,作者在好几篇文章里,都有提醒读者。 挺佩服作者4年多的时间,坚持去和这些精神病人或心理障碍人员接触,整理成文稿奉献给大家。文章中几次提到,精神科医生朋友的担心,担心陷在这里,被精神病人带偏了,让自己无法自拔。之所以能抵御,就是靠的质疑的精神和不忘初心,即文章最后的»人生若只如初见»。 下面说说我还记得并感兴趣的几个故事,是的,我把这些当做故事来读,虽然知道这里面是大多数精神病人的人生。 第一个让我映像深刻的是四维少年,因为我到现在还想象不出四维到底是什么样子。 还有一位是一位整天看着石头,认为石头也是有生命的。 双胞胎那个,妹妹过世了,姐姐在镜子中看到了妹妹,并且他的丈夫也看到了。最后因为做成的弄巧成拙,缓解了姐姐的征兆,但貌似发展出人格分裂了。我相信人和人之间是可以通过非语言进行心灵感应的。 有两个能记得自己前世的人。那么真的有转世之说?第一个转世的人,难道一直都是转世为中国人?第二个转世的人,就认为自己的前世可能不是这个星球的人。 也有号称被外星人抓去的。 研究玛雅文明的,对玛雅文明还颇有研究,但是也没说为什么被关到精神病院了。 那个晚上睡觉面部狰狞的。无解。 有两个能预知未来的人。比较认可那个说预言就是统计学的方法的分析结果。当然啦,这个老奶奶她不是精神病人也不是心理障碍人员。 可以时间暂停的人。 可以看到偷时间的人的人。 害怕镜子的人,认为镜子里是另外一个世界。 害怕女人的人。 只有他自己能感觉到台风的人,假如是灵魂的世界里的台风呢? 精神病人其实是在他的角度来看这个世界,只是从这个角度看这个世界的时候,无法得到解释或者看懂了却迷茫了,对扑面而来的信息,无法及时的消化或过滤,想抓住,却抓不住,然后就会烦躁,就会狂躁。大部分的精神病人只是在狂躁的时候,才会被认为发病了,其他时候,可以当做正常人来看待的。大部分精神病人的逻辑特别完整和清晰,甚至比很多正常人都要好。

提问的意义 提问证明这个人在思考,有上进心,有求知欲。 问题都提不出来的人,是迷茫的,是没有思想的。他是一个独立的个体,他是»1»,无数个和他一样的人在一起(相乘 1x1x1…. =1),永远还是一个»1»。因为还是同一个思想,也没有新的问题能够提出来。社会不会因为这些人的存在而进步,就算是以加法来计算,进步程度和速度还是很小。 我思故我在。 提出的问题,也反映出这个人的水平和层次。 有些人每天的问题是,今天吃什么?去哪玩?这种人大体上过着无忧无虑的生活,生活的全部就是生活。也许这也是大多数人所羡愿的生活。但有时候,生活也不是全部就是生活。在吃与玩之后,我们还得做点什么,来满足自己吃和玩呢,或者怎样让我们吃得更好,玩得更嗨呢? 在大多数情况下,在公司招聘新人的时候,提问是最多的。大体是问一些职业技能相关的问题,回答得出来,好,那我就录用了。但是我在招聘的时候,特别喜欢让被面试人提出问题来问我。被面试人提出来的问题,说明他最关心的是哪些东西。如果他问的是公司福利和待遇方面,那我就知道他比较在意待遇,这无可厚非,工作本身就是为了体现自己的价值。如果他的技术水平符合公司的岗位,一个好的待遇确实能让他给公司创造价值。如果他问的是公司的职业发展通道,那我也就知道,他是一个有上进心的人,有这个能力,为什么不给他更好的发展呢。我本身是搞运维的,如果面试的人直接问到我技术问题,那我就是特别开心的。我可以通过他们的提问,了解到他的技术水平层次,也可以检验和探索到自己未知的东西,算是双赢的结果。 怎样提问 提个问题:»怎样把工作做好?» 我们不是每个人生而富有,所以还需要工作来维持和提升自己的生活水平和品位。怎样把工作做好,作为职场上的我们,就是一个很重要的问题了。如果直接把这个问题抛出来:“嘿,永福,我要怎样把工作做好?”,那我还真是得楞好一阵子,有点哑口无言。不是说这个问题有多么高深莫测,至少从文字来看,都是些简单字眼,但是要回答出来,确实不知从何处开始。这不是一个好的问题。 为什么这不是一个好问题?理由用被问人的哑口也可以反映出来一二。这个问题没有方向性,没有具体的指代物。有些朋友可能马上就会提出反驳,怎么就没有指代物了,问的就是工作,不是问得很具体么?然后方向性不是也有么,把工作做好。好吧,这个时候确实是考验被问人的水平的时候了。他会首先要弄明白你的具体工作是什么,了解你工作的性质,了解你工作所属的行业及行业的发展,当前工作中主要的困境,以及产生这些困境的主要原因,把工作做好的标准是什么,需要达到什么样的目标等等。聪明的你应该看出来了吧,被问者反而要问你更多的问题,才有可能给出你稍微合理的符合你的答案,或者在回答这些提问的时候,自己已经找到了答案。 建议阅读 《学会提问》 作者: M.尼尔•布朗 / 斯图尔特·基利 How To Ask Questions The Smart Way 在线阅读: http://www.catb.org/esr/faqs/smart-questions.html 如何提出一个好问题 知乎链接: https://www.zhihu.com/question/19555761