V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiaotianhu
V2EX  ›  程序员

想做到读懂 Nginx/ PHP 这种项目的源码需要哪些技能?

  •  
  •   xiaotianhu · 2017-09-13 17:08:50 +08:00 · 3127 次点击
    这是一个创建于 2662 天前的主题,其中的信息可能已经有所发展或是发生改变。

    RT,感觉目前差得很远.

    需要哪些技能,能达到看懂的水平?

    11 条回复    2017-09-14 13:33:44 +08:00
    kangkang
        1
    kangkang  
       2017-09-13 18:44:44 +08:00
    一个笔记本,一边看一边画图,不懂的部分记下来 google
    akira
        2
    akira  
       2017-09-13 19:08:57 +08:00   ❤️ 1
    先想想如果是你自己做的话 需要哪些技能点。
    goodspb
        3
    goodspb  
       2017-09-13 19:48:24 +08:00 via iPhone
    嘿嘿嘿…知识点多得可怕!
    zwzsddxk
        4
    zwzsddxk  
       2017-09-13 19:53:55 +08:00
    首先你需要一个阅读源码的好工具,不然 PHP 源码的那帮宏定义复杂到让你甚至看一个模块都会费解很久
    wdlth
        5
    wdlth  
       2017-09-13 20:41:28 +08:00
    Nginx 作为一个 HTTP、Stream 代理和邮件代理服务器,先不谈里面的算法,要了解功能必然得先知道网络编程,然后它用了事件驱动,那又得了解事件驱动的相关知识,接着 HTTP、邮件等应用协议的规范和实现等,你可以先从低版本的一部分代码慢慢开始……
    wellsc
        6
    wellsc  
       2017-09-13 21:13:54 +08:00
    先撸一遍 K&R,UNP,Unix 高级编程
    gemini
        7
    gemini  
       2017-09-13 22:36:13 +08:00
    最基本的:linux c+http(rfc2616)
    zsx
        8
    zsx  
       2017-09-14 09:32:52 +08:00
    需要一个 IDE ……读 PHP 源码被宏搞的崩溃的有感
    owenliang
        9
    owenliang  
       2017-09-14 11:08:59 +08:00
    首先,你得会 linux 网络服务开发,有充足的积累,然后才能扎进去玩源码。
    owenliang
        10
    owenliang  
       2017-09-14 11:09:25 +08:00
    @zsx 推广一波 PHP7 开发教程: https://github.com/owenliang/php7-extension-explore,记得 star。
    zsx
        11
    zsx  
       2017-09-14 13:33:44 +08:00
    @owenliang #10 我刚才写了一篇《从 PHP 源码与扩展开发谈 PHP 任意代码执行与防御》: https://blog.zsxsoft.com/post/30 or https://zhuanlan.zhihu.com/p/29330988
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1083 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 19:06 · PVG 03:06 · LAX 11:06 · JFK 14:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.