1. 程式人生 > >Linux中web伺服器的搭建與配置

Linux中web伺服器的搭建與配置

一、web伺服器的簡介

    網頁伺服器(Web server)一詞有兩個意思:
    一臺負責提供網頁的電腦,主要是各種程式語言構建而成,通過HTTP協議傳給客戶端(一般是指網頁瀏覽器)。
    一個提供網頁的伺服器程式

image.png

image.png

二、web伺服器的簡單搭建

1、安裝一個可以提供web服務的軟體

yum -y install httpd

image.png

2、 啟動httpd服務

systemctl start httpd

image.png

3、進入主配置檔案

vim /etc/httpd/conf/httpd.conf

image.png

image.png

    在此範圍內新增或刪除設定,為了方便編寫,編輯了一個子配置檔案/etc/httpd/conf.d/httpd-vhosts.conf

image.png

4、 編輯子配置檔案

vim /etc/httpd/conf.d/httpd-vhosts.conf  此路徑必為conf.d/*.conf (意:為.conf 字尾命名)

image.png

image.png

systemctl restart httpd   重啟服務

5、 編輯頁面測試檔案

    在web服務中預設存放網頁檔案的路徑:/var/www/html


    預設網頁檔名字:index.html

image.png

image.png

cat /var/www/html/index.html   檢視index.html 檔案中的內容

image.png

6、 瀏覽器測試

ifconfig ens33  檢視ens33網絡卡的地址

image.png

    在瀏覽器中輸入地址,即可檢視內容

image.png

三、web伺服器的進一步搭建與配置

    實驗一、 實現基於同臺機器ip的訪問控制

1、選擇一個IP地址,此地址將成為被禁止訪問的地址(選擇了本虛擬機器中的其中一個IP )

ifconfig ens33   檢視ens33網絡卡的地址

image.png

2、 編輯子配置檔案

vim /etc/httpd/conf.d/httpd-vhosts.conf    vim 編輯

image.png

    在配置檔案中寫入禁止的ip 192.168.230.131

image.png

    以後的實驗,只要編輯過配置檔案,儲存退出後都要重啟服務

systemctl restart httpd

3、 客戶端測試

image.png

    實驗二、實現基於不同機器ip的訪問控制

1、 配置子配置檔案

image.png

image.png

2、 客戶端測試

curl  172.18.251.86  訪問伺服器

 image.png

    實驗三、 實現基於不同機器ip的訪問控制

1、 在此實驗中設定為白名單(標籤可省略)

image.png

image.png

    省略後的效果如圖:

image.png

2、 測試

image.png

image.png

    實驗四、 瞭解index, followsymlinks

1、 刪除 /var/www/html/index.html 檔案,也可改變檔名

image.png

2、 瀏覽器測試

image.png

3、 編輯配置檔案

image.png

    錯誤舉例:

image.png

httpd -t  語法檢測   表示第4行有錯誤

image.png

    再次編輯配置檔案

image.png

    再次語法檢測   OK

image.png

4、  重啟服務

image.png

5、  瀏覽器測試  (不再列出列表)

image.png

    實驗五、 實現組

1、 編輯配置檔案

image.png

image.png

    重啟服務

2、 實驗環境建立

useradd xiaochen    建立使用者
useradd xiaofan

image.png

htpasswd -b -c -m /etc/httpd/conf/.htpasswd xiaochen centos   實質為新增web使用者
htpasswd -b -m /etc/httpd/conf/.htpasswd xiaofan centos

image.png

3、 編輯配置檔案中設定的組檔案與密碼檔案(隱藏檔案)

image.png

    內容如下:

image.png

cat .htgroup   檢視檔案內容

image.png

chmod  774 .htgroup    改變檔案的許可權,讓其他人有讀許可權

image.png

    編輯密碼檔案

image.png

image.png

4、開啟【執行】,win+r  ,輸入cmd

image.png

    輸入以上命令,即可看到以下視窗

image.png

5、 瀏覽器測試

image.png

image.png

    成功!…^.^…

image.png

    實驗六、 虛擬主機

基於不同埠的虛擬主機

1、 編譯配置檔案

image.png

image.png

    重啟服務

2、 編寫網頁檔案

image.png

image.png

image.png

image.png

3、 改變許可權    

setfacl -m u:apache:rwx /app/chen*     也可設定特殊許可權

image.png

4、 瀏覽器測試

image.png

image.png

基於不同ip的虛擬主機

1、 編輯配置檔案

image.png

image.png

    重啟服務

2、 為ens34 網絡卡設定多個ip

image.png

ifconfig  檢視IP資訊

image.png

基於不同域名的虛擬主機

1、 編譯配置檔案

image.png

image.png

    重啟服務

2、 開啟【執行】,win+r  ,輸入cmd

image.png

image.png

3、 瀏覽器測試

image.png

image.png

四、 小總結

 httpd的常用的功能特性:

    支援路徑別名:alias 
    支援使用者認證:基本認證和摘要認證authentication 
    支援虛擬主機:virtual host 在一個物理主機上提供多個站點 
    支援負載均衡:是反向代理的一個子特性 
    支援使用者站點:當前使用者都可以在自己的家目錄下建立自己的站點  
    支援CGI:Common Gateway Interface 通用閘道器介面