nginx http is processed in phases;
The entry function is ngx_http_core_run_phases()
<code><span>#0</span> ngx_http_core_run_phases (r<span>=</span><span>0x770670</span>) at src/http/ngx_http_core_module<span>.</span>c:<span>834</span><span>#1</span><span>0x000000000044eaec</span><span>in</span> ngx_http_handler (r<span>=</span><span>0x770670</span>) at src/http/ngx_http_core_module<span>.</span>c:<span>823</span><span>#2</span><span>0x000000000045e193</span><span>in</span> ngx_http_process_request (r<span>=</span><span>0x770670</span>) at src/http/ngx_http_request<span>.</span>c:<span>1901</span><span>#3</span><span>0x000000000045cad2</span><span>in</span> ngx_http_process_request_headers (rev<span>=</span><span>0x7867d0</span>) at src/http/ngx_http_request<span>.</span>c:<span>1332</span><span>#4</span><span>0x000000000045be75</span><span>in</span> ngx_http_process_request_line (rev<span>=</span><span>0x7867d0</span>) at src/http/ngx_http_request<span>.</span>c:<span>1012</span><span>#5</span><span>0x000000000045aada</span><span>in</span> ngx_http_wait_request_handler (rev<span>=</span><span>0x7867d0</span>) at src/http/ngx_http_request<span>.</span>c:<span>499</span><span>#6</span><span>0x000000000043f2f9</span><span>in</span> ngx_epoll_process_events (cycle<span>=</span><span>0x7615d0</span>, timer<span>=</span><span>60000</span>, flags<span>=</span><span>1</span>) at src/event/modules/ngx_epoll_module<span>.</span>c:<span>822</span><span>#7</span><span>0x000000000042ff64</span><span>in</span> ngx_process_events_and_timers (cycle<span>=</span><span>0x7615d0</span>) at src/event/ngx_event<span>.</span>c:<span>242</span><span>#8</span><span>0x000000000043cea1</span><span>in</span> ngx_worker_process_cycle (cycle<span>=</span><span>0x7615d0</span>, <span>data</span><span>=</span><span>0x0</span>) at src/os/unix/ngx_process_cycle<span>.</span>c:<span>753</span><span>#9</span><span>0x00000000004397c2</span><span>in</span> ngx_spawn_process (cycle<span>=</span><span>0x7615d0</span>, proc<span>=</span><span>0x43cda9</span><span><</span>ngx_worker_process_cycle<span>></span>, <span>data</span><span>=</span><span>0x0</span>, name<span>=</span><span>0x4f5c6b</span><span>"worker process"</span>, respawn<span>=-</span><span>3</span>) at src/os/unix/ngx_process<span>.</span>c:<span>198</span><span>#10</span><span>0x000000000043bd31</span><span>in</span> ngx_start_worker_processes (cycle<span>=</span><span>0x7615d0</span>, n<span>=</span><span>1</span>, <span>type</span><span>=-</span><span>3</span>) at src/os/unix/ngx_process_cycle<span>.</span>c:<span>358</span><span>#11</span><span>0x000000000043b371</span><span>in</span> ngx_master_process_cycle (cycle<span>=</span><span>0x7615d0</span>) at src/os/unix/ngx_process_cycle<span>.</span>c:<span>130</span><span>#12</span><span>0x0000000000407662</span><span>in</span> main (argc<span>=</span><span>1</span>, argv<span>=</span><span>0x7fffffffe5f8</span>) at src/core/nginx<span>.</span>c:<span>415</span></code>
The above introduces the nginx http processing request entry, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.