服務(wù)端開發(fā)基礎(chǔ)


  • 知道什么是Web服務(wù)器
  • 知道IP、域名和端口
  • 知道DNS
  • 知道C/S和B/S架構(gòu)

1. Web服務(wù)器

問題: 當我們寫好一個html文件,放在桌面上時,別人能不能通過瀏覽器訪問?
答: 不行。 必須將我們的html文件放入==web服務(wù)器==,其他人通過網(wǎng)絡(luò)才能訪問。

1.1 什么是服務(wù)器?

服務(wù)器可以從硬件、軟件(系統(tǒng)軟件、應(yīng)用軟件)兩個角度描述。

按硬件描述: 服務(wù)器就是一臺超級計算機。
按系統(tǒng)劃分: 在硬件上安裝了什么操作系統(tǒng),就可以稱為該系統(tǒng)的服務(wù)器
例如: linux服務(wù)器、windows服務(wù)器、unix服務(wù)器等。
按軟件劃分: 在操作系統(tǒng)中安裝了什么軟件,就可以稱作該軟件的服務(wù)器
例如: ==web服務(wù)器、數(shù)據(jù)庫服務(wù)器==、郵件服務(wù)器等。

1.2 Web服務(wù)器

Web服務(wù)器就是安裝了Web服務(wù)軟件,能夠提供網(wǎng)站服務(wù)的服務(wù)器。淘寶、京東、新浪等等

常見的Web軟件:
==Apache==、Nginx、IIS、Tomcat、==Nodejs== 等。
Apache服務(wù)器、Nginx服務(wù)器、IIS服務(wù)器、Tomcat服務(wù)器、Nodejs服務(wù)器

PS: web服務(wù)器又叫做http/httpd服務(wù)器

2. 安裝phpstudy

phpstudy是一個集成環(huán)境,包含了:Apache、MySQL等服務(wù)器軟件。 我們安裝該軟件之后,就是在自己電腦上安裝了 Apache服務(wù)器和MySQL服務(wù)器。

類似的軟件: WAMP、PHPnow等等

2.1 準備工作

下載: http://phpstudy.php.cn/

2.2 安裝

==核心重點: 安裝任何與開發(fā)相關(guān)的軟件時都必須安裝到英文路徑下。== (不安裝到英文路徑下可能產(chǎn)生未知的錯誤)

  1. 解壓壓縮包
  1. 設(shè)置安裝路徑

必須是英文路徑,路徑中不能出現(xiàn)中文

  1. 安裝過程
  1. 安裝完成,顯示 圖形化控制界面
  1. 點擊 '啟動' 按鈕,開啟服務(wù)器(此處同時開啟了 Apache和MySQL)
  1. 允許 Apache 和 MySQL 訪問網(wǎng)絡(luò)
  1. 測試

打開瀏覽器輸入: 127.0.0.1 按下回車后能看到頁面上顯示 'Hello World' 則說明安裝成功

2.3 phpstudy目錄結(jié)構(gòu)

進入 d:/phpstudy 目錄

再進入 PHPTutorial 目錄

Apache: Apache服務(wù)器軟件安裝目錄

MySQL: MySQL服務(wù)器軟件安裝目錄

WWW: 網(wǎng)頁及相關(guān)文件保存目錄。 所有的 html、js、css以及使用到的圖片、視頻、音頻文件保存目錄

2.4 Apache使用演示

將之前寫好的 '品優(yōu)購' 網(wǎng)頁存放到WWW目錄下

==注意:在 WWW 目錄下創(chuàng)建了 p-buy 目錄,再將品優(yōu)購的網(wǎng)頁放在該目錄下==

在瀏覽器中輸入: 127.0.0.1/p-buy/index.html

在瀏覽器中輸入: 127.0.0.1/p-buy/list.html

在瀏覽器中輸入: 127.0.0.1/p-buy/item.html

3. 網(wǎng)站基礎(chǔ)概念

3.1 URL地址解析

瀏覽器中輸入的地址: 127.0.0.1/p-buy/index.html

實際全地址: http://127.0.0.1:80/p-buy/index.html

http: 協(xié)議名, 超文本傳輸協(xié)議

127.0.0.1: 服務(wù)器IP地址

80: Apache服務(wù)器的默認端口號

/p-buy/index.html: 要訪問的文件路徑

3.2 IP地址

IP: Internet Protocol 互聯(lián)網(wǎng)協(xié)議,是為計算機網(wǎng)絡(luò)相互連接進行通信而設(shè)計的協(xié)議。

處于網(wǎng)絡(luò)(互聯(lián)網(wǎng)、局域網(wǎng))上的任何一臺計算機都有一個獨立的ip地址。
ip地址由4段3位長度的數(shù)字組成, 3位數(shù)字的取值范圍 0-255。如: 102.15.201.10

特殊ip:
127.0.0.1 : 回環(huán)地址,每一臺電腦都有該ip,指向當前使用的電腦
192.168.*. *: 該網(wǎng)段是專門用于做==局域網(wǎng)==的ip段。

3.3 域名

域名(Domain Name): 每個網(wǎng)站都有一個自己的域名。人們可以在瀏覽器中輸入域名來訪問對應(yīng)的網(wǎng)站。

淘寶: www.taobao.com

百度: www.baidu.com

特殊域名:
localhost: 本地主機。在瀏覽器中輸入localhost就會訪問當前操作的這臺電腦的web服務(wù)器。

3.4 DNS

DNS: Domain Name System 域名系統(tǒng)。在DNS服務(wù)器中保存了域名和IP的映射關(guān)系。主要工作是將域名轉(zhuǎn)換為IP地址,因為我們通過瀏覽器訪問網(wǎng)站時,實際上是去找對應(yīng)的IP地址。

域名: 網(wǎng)站的名稱,就相當于人名。
IP: 網(wǎng)站在網(wǎng)絡(luò)上的實際地址,就相當于人的住址。

一般訪問網(wǎng)站時都是輸入域名的(例如: www.tmall.com www.163.com),但是在實際訪問時域名會被DNS轉(zhuǎn)換為IP地址。

DNS工作機制圖:

hosts文件可以手動設(shè)置域名和IP的映射關(guān)系

dns緩存可以保存曾經(jīng)訪問過的域名和IP的映射關(guān)系

工作步驟:

  1. 在瀏覽器中輸入 www.taobao.com,按下回車

  2. 瀏覽器首先在本機中的 hosts文件和dns緩存中查詢,www.taobao.com的IP地址。如果有,則獲取該IP地址,然后去訪問淘寶服務(wù)器。 如果沒有,則向dns服務(wù)器發(fā)送解析請求。

  3. dns服務(wù)器獲取到瀏覽器請求信息之后, 將域名轉(zhuǎn)換為IP地址,再將IP地址返回給瀏覽器。

  4. 瀏覽器獲取到IP地址,然后通過IP地址訪問淘寶服務(wù)器。

windows下查看dns緩存:
ipconfig /displaydns
ipconfig /displaydns > c:/dnscache.txt 將dns緩存導(dǎo)入到c:/dnscache.txt文件

windows下清除dns緩存
ipconfig /flushdns

3.5 端口

端口是英文port的意譯。端口可以理解為區(qū)分服務(wù)器上服務(wù)的標號。

已被占用的著名端口號:
80: Web端口號, Apache、Nginx、IIS

? 3306: MySQL端口號

21:   FTP端口號, FTP軟件
22:   SSH端口號
25:   sendmail端口號
......

因為Web服務(wù)的默認端口號是80,所以在地址欄可以不輸入,但是如果將端口號改為其他的(如:8088),那就必須輸入端口號,才能正常訪問。

端口號取值范圍: 0-65535

3.6 C/S和B/S架構(gòu)

C/S軟件體系結(jié)構(gòu),即Client/Server (客戶機/服務(wù)器)結(jié)構(gòu)。
核心特點:==要下載一個客戶端==,例如:QQ、微信、LOL、王者榮耀、絕地求生等。

C/S結(jié)構(gòu)的軟件,服務(wù)器主要做==數(shù)據(jù)轉(zhuǎn)發(fā)==工作。以QQ聊天為例:
任何兩個人聊天的內(nèi)容都會發(fā)送到QQ服務(wù)器上,然后再由QQ服務(wù)器進行轉(zhuǎn)發(fā)

 王小賤和小仙女聊天
    唐小賤發(fā)送一句話,這句話會先發(fā)送到QQ服務(wù)器,再由QQ服務(wù)器轉(zhuǎn)發(fā)到小仙女的客戶端。

B/S軟件體系結(jié)構(gòu),即Browser/Server (瀏覽器/服務(wù)器)結(jié)構(gòu)。
核心特點:==使用瀏覽器(Chrome、Firefox等)進行操作==,例如:淘寶、京東、新浪等。

B/S結(jié)構(gòu)軟件,服務(wù)器承擔了所有業(yè)務(wù),瀏覽器只是用來顯示最終內(nèi)容的。

思考問題: B/S的優(yōu)勢和劣勢, C/S的優(yōu)勢和劣勢。

B/S的優(yōu)勢: 部署方便,容易維護。用戶使用方便(一個瀏覽器即可)。
B/S的劣勢: 客戶端功能簡單

C/S的優(yōu)勢: 客戶端的功能強大
C/S的劣勢: 必須下載客戶端非常麻煩,升級維護麻煩

4. 靜態(tài)網(wǎng)站和動態(tài)網(wǎng)站

靜態(tài)網(wǎng)站: 頁面永遠都一樣(頁面當中的數(shù)據(jù)是死的)

動態(tài)網(wǎng)站: 頁面中的數(shù)據(jù)從數(shù)據(jù)庫來(數(shù)據(jù)是活的)

動態(tài)網(wǎng)站實現(xiàn)需要一種后端技術(shù)來支撐: PHP、JSP、 ASP、Python等

Javascript也能作為后端技術(shù),但是需要Nodejs運行環(huán)境來支撐。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容