記錄一些服務端術語和搭建web服務器


菜單快捷導航

  1. 服務端常用術語
  2. 搭建web服務器和配置虛擬主機

記錄一些服務端方面的常用術語

1、CS架構和BS架構

1.1 CS架構

CS(Client/Server),基於安裝包類型的桌面或手機軟件模式,比如常見的QQ、微信、迅雷等等。
優點是 :基於安裝包,性能更高,安全性更高。
缺點是:對於商家來說每個平台都需要開發對應的客戶端安裝包,比如windows/mac/android/ios上都需要開發對應的安裝包;對於平台來說安裝過多軟件易占用系統資源;對於客戶來說需要安裝才能使用

1.2 BS架構

BS(Browser/Server),基於瀏覽器的網站模式,比如常見的京東網站、淘寶網站等等。
優點是:基於瀏覽器,系統自帶有,客戶不需要安裝,訪問方便;節省系統資源;網站迭代升級方便;
缺點是:操作穩定性,流暢度,安全方面相對CS架構較弱一些。

2、客戶端

具有向服務器索取服務能力的終端,比如手機、電腦等,通過安裝不同的客戶端軟件,可以獲取不同的服務。常見的客戶端軟件:瀏覽器、QQ、支付寶、迅雷、愛奇藝等等

 

3、服務端

通俗的講 ,能夠提供某種服務的機器(計算機)稱為服務器

3.1 服務器類型

按照不同的划分標准,服務可划分為以下類型:

  1. 按服務類型可分為:文件服務器、數據庫服務器;
  2. 按操作系統可分為:Linus服務器、Windows服務器;
  3. 按應用軟件可分為:Apache服務器、Nginx服務器、IIS服務器、Tomcat服務器、Node服務器等;

3.2 服務器軟件

使計算機具備提供某種服務能力的應用軟件,成為服務器軟件,通過安裝相應的服務軟件,然后進行配置后就可以使計算機具備了提供某種服務的能力。
常見的服務軟件有:

  1. 文件服務器:Server-U、FileZilla、VsFTP等
  2. 數據庫服務器:Oracle、MySQL、PostgreSQL、MSSQL等
  3. 郵件服務器:Postfix、Sendmail等
  4. web服務器:Apache、Nginx、IIS、Tomcat、NodeJS等

3.3 Web服務器

即網站服務器,主要提供文檔(文本、圖片、視頻、音頻)瀏覽服務,一般安裝Apache、Nginx服務器軟件。
HTTP服務器可以結合某一編程語言處理業務邏輯,由此進行的開發,通常稱之為服務端開發。
常見的運行在服務端的編程語言包括PHP、Jsp、Asp、Python、Ruby、Go等

 

4、網絡基礎

4.1 IP地址

所謂IP地址就是給每個連接在互聯網上的主機分配的一個32位地址(就像每部手機能正常通話需要一個號碼一樣)。
查看本機ip地址:windows用ipconfig,mac用ifconfig。
ip有公網ip(對外可訪問,需去電信局申請), 局域網ip(某一局域內可被訪問的ip)。

4.2 域名

由於IP地址基於數字,不方便記憶,於是便用域名來代替IP地址,域名是一個IP地址的“面具”。
查看域名對應的IP地址命令有ping、tracert。拿到ip后,也可以通過ip訪問網站。

4.3 DNS服務

DNS記錄了IP地址和域名的映射(對應)關系。查找優先級 ,本機hosts文件 > DNS服務器。

4.4 端口

端口號是計算機與外界通訊交流的出口,每個端口對應不同的服務,web頁面訪問根據ip定位到主機,根據端口定位到具體的提供服務的軟件。
比如現實生活中,銀行不同的窗口辦理不同的業務。
查看端口占用情況:`netstat -an`
常見端口號80、8080、3306、21、22

 

 5、搭建一個web服務器

5.1 wampserver

wampserver是一個基於windows的集成軟件,集成了apache + php解析引擎 + mysql。
安裝wampserver,和普通軟件無差別,默認安裝在C:\wamp,安裝完成后,當看到任務圖標綠色表示正常啟動。
## 5.2 配置根目錄
網站根目錄是web服務器上存放網站程序的空間,可通過修改配置文件自定義,wampserver安裝后的默認網站根目錄是:C:\wamp\www。
我們可以自定義一個網站根目錄,比如在windows電腦的F磁盤上新建一個文件夾tanWeb, 里面再新建幾個測試頁面,然后我們想讓網站根目錄指向這個文件夾,如何生效呢?

  1. 打開wampserver軟件安裝路徑,找到apache文件夾下的httpd.conf文件
  2. 打開httpd.conf文件編輯,找到大約178行和205行,把`c:/wamp/www/`改成`F:/tanWeb/`
  3. 保存,重啟Apache。

 

重啟成功后,可以通過127.0.0.1訪問了。httpd.conf文件里面設置默認可以通過127.0.0.1訪問,但是不支持localhost進行訪問,如果想localhost也能訪問,需要處理一下,在httpd.conf文件235行左右,默認寫着`Allow from 127.0.0.1`,在后面再加一句`Allow from all`,然后重啟Apache, 就也可以通過localhost來訪問了。

 

5.3 網站部署

將我們制作好的網頁拷貝到配置好的根目錄下,瀏覽器訪問127.0.0.1即可。

5.4 靜態資源和動態資源

靜態資源:可以直接被瀏覽器解析的資源我們稱為靜態資源,比如html、javascript、css、video等
動態資源:動態資源在服務器被解析,而可以被轉換成靜態資源。
如果我們在客戶端瀏覽器訪問的是靜態資源,那服務器接收到請求后,會直接將靜態資源響應給客戶端;
如果客戶端瀏覽器訪問的是動態資源,那么服務器接收到請求后會將動態資源轉換成靜態資源,然后進行響應。

5.5 配置虛擬主機

先說下域名解析,當我們在瀏覽器輸入一個域名,首先系統會先訪問本機的hosts文件,一般hosts文件的路徑是`C:\Windows\System32\drivers\etc\hosts`,如果hosts文件上有對域名的解析,則以這個為准;如果hosts上沒有找到目標域名解析,則再從DNS服務器上去找解析。
因此我們來做一個試驗,當我們在本機瀏覽器上輸入一個`jd.com`域名,如何讓瀏覽器指向我們本機部署的web服務?比如上面我們把127.0.0.1訪問的網站部署在F磁盤的tanWeb文件中。操作秘密就是在hosts文件中做處理。如下圖

保存,瀏覽器輸入域名`jd.com`或`tmall.com`,我們看到瀏覽器上顯示的是我們本地web網站的頁面:

再說虛擬主機,意思是在一個web服務器上,可以配置多個web網站,然后每個虛擬主機之間相互獨立。比如我在瀏覽器輸入`jd.com`和`tmall.com`,它們分別訪問本機web服務的不同目錄。
測試一下:

  1. 在F盤下tanWeb目錄下分別新建一個tmall文件夾,和jd文件夾,然后每個文件夾創建一個index.html網頁
  2. 在上面已經在hosts文件上已經設置對於域名`jd.com`和`tmall.com`的解析指向`127.0.0.1`,接下來是要修改Apache里面的配置;
  3. 打開Apache里面的httpd.conf文件,找到468行左右虛擬主機的配置,去掉注釋#,意思是啟用虛擬主機配置`Include conf/extra/httpd-vhosts.conf`
  4. 然后找到httpd-vhosts.conf文件,打開編輯,找到最下面關於虛擬主機的配置,配置每個虛擬主機對應的物理網站根目錄,以及訪問域名。相關截圖如下:

然后再瀏覽器輸入`tmall.com`和`jd.com`,看看瀏覽器效果:

然后再說下從瀏覽器輸入`jd.com`時,它是如何找到本機頁面並展示的:

  1. 瀏覽器輸入`jd.com`,然后瀏覽器先去尋找本機的`C:\Windows\System32\drivers\etc\hosts`文件
  2. 在hosts文件里尋找`jd.com`映射,剛好找到hosts文件有一個`127.0.0.1 jd.com`映射,`127.0.0.1`代表的是本機,然后找到本機web服務器Apache軟件
  3. 讀取Apache的httpd.confg文件,里面已經設置好了web根目錄,並且啟動了虛擬主機;
  4. 然后讀取虛擬主機配置文件httpd-vhosts.conf, 里面已經配置了`jd.com`域名對應的物理網站路徑,最后找到這個目錄下的頁面,展示到瀏覽器上。

大致過程就是這樣。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM