靜態資源訪問:
1、用戶發起訪問http://www.abc.com/index.html 2、服務器端接收到請求,該請求到達服務器的內核空間,因為tcp/ip協議工作在內核空間;到達內核空間后,發現訪問的是80端口的套接字,通過路由和相關解碼,請求被轉到服務器的用戶空間,也就是轉到了web服務上; 3、請求到達用戶空間后,發現請求的是一個文件,然后繼續把請求轉到內核空間,內核空間通過內核在磁盤上獲取對應文件; 4、請求在內核空間獲取到對應文件后,把文件返回至用戶空間即web服務; 5、請求結果到達用戶空間的web服務上后,把結果再通過套接字回到內核空間; 6、內核空間把結果通過網絡tcp/ip協議棧返回至客戶端。
動態資源請求:
1、用戶發起訪問http://www.abc.com/index.php 2、服務器端接收到請求,該請求到達服務器的內核空間,因為tcp/ip協議工作在內核空間;到達內核空間后,發現訪問的是80端口的套接字,通過路由和相關解碼,請求被轉到服務器的用戶空間,也就是轉到了web服務上; 3、請求到達用戶空間后,發現請求的是一個動態頁面,然后根據相關協議調用php解釋器程序; 4、請求到達php解釋器中,把請求轉至內核空間從磁盤上獲取對應文件; 5、獲取到文件后,請求到達用戶空間的解釋器中執行一遍; 6、解釋器把執行結果返回至web服務上,然后解釋器進程自行銷毀; 7、請求結果到達用戶空間的web服務上后,把結果再通過套接字回到內核空間; 8、內核空間把結果通過網絡tcp/ip協議棧返回至客戶端。