DNS
Domain Name System的簡寫,意思為域名解析系統。其中保存了服務器名(域名)與IP地址之間的映射關系。
1) DNS服務器
服務器的真正身份信息為IP地址。需要專門的服務器來解析IP地址與域名的映射關系。
當從瀏覽器輸入域名地址,發起請求時,瀏覽器訪問DNS服務器,獲取域名對應的IP地址。然后使用該IP地址訪問服務器。
我們自行注冊域名后,需要解析A記錄。主機記錄(A記錄):RFC 1035定義,A記錄是用於名稱解析的重要記錄,它將特定的主機名映射到對應主機的IP地址上。
2) 本地hosts文件
每次都請求網絡中的DNS服務器,時間成本較高。windows自帶的DNS文件,可以用來緩存域名與IP地址的對應關系。此外,瀏覽器也會緩存部分域名與IP地址的映射。
文件名:hosts
存儲路徑:C:\Windows\System32\drivers\etc\hosts
端口
一台計算機可能同時提供多種服務,如web服務,FTP服務(傳輸網站程序)
不同服務器軟件監視不同的端口,來提供不同的服務(類型小區的信箱)
常見的服務器軟件的默認端口號:
l web服務,默認為80
l FTP服務(上傳、下載網站程序) ,默認為21(SSH,22)
l 數據庫服務器默認為 3306
當時用默認端口號時,大多數場合可以直接省略該參數
web程序的訪問流程
- 用戶在瀏覽器地址欄輸入請求URL,發起請求。
- 通過DNS服務器解析出IP地址,找到對應的主機。
- 根據腳本的類型:
如果是以.html結尾的文件,直接返回給瀏覽器。
如果是以.php結尾的文件,需要先執行PHP腳本。
此外,執行PHP腳本過程中,可能需要連接數據庫獲取一些數據信息。
所有代碼執行完后,Apache將執行結果發給瀏覽器進行展示。