1. 程式人生 > >linux——HTTP服務

linux——HTTP服務

一.URL
   全稱“統一資源定位器”訪問資源
   格式:協議://伺服器IP或FQDN/檔案
二:HTTP協議
   超文字傳輸協議,用於WEB網頁瀏覽
   實現了web服務,埠號:TCP80
三:工作原理
   客戶端開啟瀏覽器,使用一個隨機埠連線伺服器的80埠,傳送請求。伺服器相應客戶端的   請求後,將客戶端     請求的檔案傳送至客戶端,在客戶端上通過瀏覽器解碼後,即可檢視到網頁內容。
四:HTTPS (http+ssl/tls)
    功能:可以驗證網站的真實性(通過CA頒發的證書),實現資料的加密傳輸。
    埠:TCP443
五:配置web伺服器
   1.安裝軟體   yum -y install httpd
   2.生成主頁檔案
     cd /var/www/html
  例:echo "hello,Spring Festival" > index.html
     chmod a+x /var/www/html/index.html
   3.啟動服務
     systemctl  restart  httpd
   4.檢視HTTPD的服務狀態
     systemctl  status  httpd -l
   5.檢視httpd的埠狀態
     netstat -lantu | grep 80
     lsof -i tcp:80
六:配置客戶端
   1.安裝瀏覽器   
     yum -y install elinks  或 yum -y install lynx
   2.瀏覽web伺服器上的主頁檔案
     elinks http://伺服器IP或FQDN
     lynx   http://伺服器IP或FQDN
七:使apaceh支援PHP指令碼
   使http支援php頁面
   1.安裝http及php:yum install httpd php php-mbstring php-pear -y
   2.配置apache:vim /etc/httpd/conf/httpd.conf
     86:ServerAdmin [email protected]
    注:可將主機名更改為:www.server.com
    95:ServerName www.server.com:80
    151:AllowOverride All
    164:DirectoryIndex index.html index.cgi index.php
八:配置虛擬主機
   1.配置基於不同FQDN相同IP相同埠的虛擬主機
    注:apache伺服器必須能夠解析虛擬主機的FQDN
    (1)生成虛擬主機配置檔案
      cd /etc/httpd/conf.d
      vim  www.conf
                                                        註解
         <directory /srv/www/html>                    指定目錄
          allowoverride none                          所有使用者都可以訪問
          require all granted                         以當前配置檔案為主
         </directory>
         <virtualhost www.5iblue.com:80>              虛擬主機名
          documentroot  /srv/www/html                 主頁存放路徑
          servername    www.5iblue.com                主機名
          serveradmin   [email protected]               管理員
          errorlog   "logs/www_err_log"               錯誤日誌的存放路徑
          customlog   "logs/www_acc_log" common       訪問日誌的存放路徑
         </virtualhost>
 
      vim web.conf
      內容如下:

         <directory /srv/web/html>
          allowoverride none
          require all granted
         </directory>
         <virtualhost www.5iblue.com:80>
          documentroot  /srv/web/html
          servername    web.5iblue.com
          serveradmin   [email protected]
          errorlog   "logs/web_err_log"
          customlog   "logs/web_acc_log" common
         </virtualhost>   

    (2)生成虛擬主機的主頁檔案
      mkdir -p /srv/www/html
      mkdir -p /srv/web/html
      echo "hello www" > /srv/www/html/index.html
      chmod a+x /srv/www/html/index.html
      echo "hello web" > /srv/web/html/index.html
      chmod a+x /srv/web/html/index.html

    (3)啟動服務
    (4)客戶端測試
       elinks http://www.5iblue.com
       elinks http://web.5iblue.com
  2.基於相同IP,不同埠的虛擬機器
    注:apache伺服器上監聽所有虛擬主機的埠
  3.基於不同FQDN,不同埠的虛擬主機
    注:apache伺服器可以解析所有虛擬主機的FQDN,可以監聽所有虛擬主機的埠
  4.基於不同IP相同埠的虛擬主機
    注:apache伺服器必須具有虛擬主機所有IP

九:Apache三種工作模式
   1.三種模式
   (1)prefork:採用程序來響應客戶端的連線
   (2)worker:採用執行緒來響應客戶端的連線
   (3)event:客戶登入前採用程序響應,登入後採用執行緒響應
   2.三種工作模式間的切換
   (1)檢視當前Apache的工作模式
        httpd -V | grep MPM
   (2)修改Apache的當前工作模式
       vim /etc/httpd/conf.modules.d/00-mpm.conf
十.HTTPS
   https+tls/ssl