想要完成完整的 web **,還需要學習什麼?
一台安裝特定軟體的公共計算機,用於提供特定的服務。
安裝了apache就是web伺服器,安裝了mysql就是資料庫伺服器
安裝web伺服器軟體(執行幾個命令列)
1.3.1 ip位址
1.3.2 網域名稱
ip的別名,方便記憶
1.3.3 dns
1.3.4 埠
埠:外部和計算機進行資料往來的通道。
計算機本身是乙個封閉的環境,就像是乙個大樓,如果需要有資料通訊往來,必須有門,這個門在術語中就叫端 口,每乙個埠都有乙個編號,每台計算機只有 65536 個埠(0-65535)。 >>一般我們把「佔門」的過程叫做監聽
1.3.5 url
網路當中某乙個網頁的完整訪問位址
https–>protocol協議
zec.me->主機名
80->埠
zce.me:80->host,主機
/schools/students->path路徑
id=18&name=zce->search查詢的引數
#photo ->hash
使用者開啟瀏覽器
瀏覽器發起乙個對這個 ip 的請求
服務端接收到這個請求,進行相應的處理
服務端將處理完的結果返回給客戶端瀏覽器
瀏覽器將服務端返回的結果呈現到介面上
動態**:每次請求時服務端動態生成html返回給使用者的**。
此時web伺服器要做的是:
1.根據請求的url對應的檔案型別判斷是否為靜態檔案
2.如果請求的是乙個靜態檔案的話
2.1 直接讀取這個檔案的內容
2.2 將檔案內容返回給客戶端
3.如果請求的不是乙個靜態檔案的話
3.1 讀取這個檔案中的**
3.2 執行這段**(交給其他程式執行)
3.3 將執行結果得到的字串返回給客戶端
1.6.1 apache與php
可以理解為:aapche是一家沒有太多能力的公司,只能處理一些簡單的業務(靜態**),但是心很大想做更多的事(動態**),所以就想到了外包,所有額外的業務都需要外包給其他程式,而php就是理解為乙個專門能夠處理php業務的外包公司
超文字傳輸協議,計算機與計算機之間溝通的一種協議
2.1.1請求報文
2.1.2 響應報文任何一門程式語言主要是學習語法和api
重點注意的問題
變數雙引號字串和單引號字串的差異
指令式的語法
foreach
函式作用域問題
字串拼接
提交方式:get,set
type 屬性為 file 的 input 元素可以通過表單提交檔案(上傳檔案),服務端 php 可以通過 $_files 獲取上 傳的檔案資訊。
array(1
)}
name,type,tmp_name,error,size
表示有結構的資料 的資料手段
// 設定 cookie
setcookie(「testcookie」, 「hello」, time() + 1 * 60 * 60); /* 1 小時過期 */
// 獲取 cookie
echo $_cookie[「testcookie」];
由於 cookie 是服務端下發給客戶端由客戶端本地儲存的。
換而言之客戶端可以在本地對其隨意操作,包括刪除和 修改。
如果客戶端隨意偽造乙個 cookie 的話,對於服務端是無法辨別的,就會造成服務端被蒙蔽,構成安全隱 患。於是乎就有了另外一種基於 cookie 基礎之上的手段:session:
session 區別於 cookie 乙個很大的地方就是:session 資料存在了服務端,而 cookie 存在了客戶端本地,存在服 務端最大的優勢就是,不是使用者想怎麼改就怎麼改了。 session 這種機制會更加適合於存放一些屬於使用者而又不能讓使用者修改的資料
STL重點回顧
1.兩級空間配置器 2.vector 是個動態陣列,隨著元素的加入,它的內部機制能夠自行的擴充空間容納新元素 但是當使用insert和erase時會出現迭代器失效問題 他們的建立和銷毀都是用construct和destory函式 因為vector是連續儲存的,所以erase時,會呼叫泛型函式copy...
NA重點回顧
arp位址解析協議 arp的分類 正向arp 逆向arp arp 無故arp。作用 1 正向arp 知道對方的ip不知道對方的mac位址時,傳送arp,獲取對方的mac位址 2 逆向arp 知對方的mac不知道ip,獲取對方的ip 2 無故arp 往外公布自己的mac,和防止位址重複。3 arp 向...
爬蟲重點回顧
閱讀網頁和解碼 1 建立請求 2 開啟目標網頁 3 閱讀網頁 4 解碼 5 找關鍵 分析 6 根據規律使用正規表示式 7 檔案讀寫 請求的時候,可以使用預設的request請求 當然也可以自定義請求物件 request.request 在自定義的請求物件中可以加入請求頭 請求頭的作用是反爬蟲,模擬不...