linux中搭建HTTP伺服器
WEB的概念
web是一種互動式圖形式介面的Internet服務,有強大的資訊連線功能,通過超文字連結( HyperText ) 的 方式,將資訊通過 Internet 傳遞到全球每個角落!一般情況下,終端使用者通過瀏覽器輸入比較完整的URL即可以完成訪問。
HTTP服務原理
分為四個步驟:
建立連線:客戶機通過TCP/IP協議建立到伺服器的TCP連線。
請求過程:客戶端向伺服器傳送HTTP協議請求包,請求伺服器裡的資源文件。
應答過程:伺服器向客戶機發送HTTP協議應答包,如果請求的資源包含有動態語言的內容,那麼伺服器會呼叫動態語言的解釋引擎負責處理“動態內容”,並將處理得到的資料返回給客戶端。由客戶端解釋HTML文件,在客戶端螢幕上渲染圖形結果。
關閉連線:客戶機與伺服器斷開。
HTTP的安裝
通過rpm安裝會安裝多餘的模組,現在我們使用編譯安裝Apache。
1.編譯安裝Apache
安裝前關閉防火牆和SElinux
[[email protected] ~] wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.37.tar.gz //下載安裝包
[[email protected] ~] tar httpd-2.4.37.tar.gz -C /opt/apache // 解壓到指定目錄
[[email protected] httpd-2.4.37]# ./configure --postfix=/opt/apache/
會發現報錯,彆著急因為還有包沒裝完,需要一一安裝,然後在進行預編譯
[[email protected] ~]make
[[email protected] ~]make install //進行安裝
2.做基於IP虛擬主機的配置
ifconfig ens33:1 192.168.0.155 up
ifconfig ens33:1 192.168.0.160 up
ifconfig //會發現多了一個虛擬的IP
在/etrc/hosts中設定IP與名稱
vi /etc/hosts
192.168.0.155 wq
192.168.0.160 wq1
ping wq
ping wq1
均能pin通
建立html網頁的目錄
mkdir -p /opt/apache/www/wq/ mkdir -p /opt/apache/www/wq1/ echo "wq,hello,world" /opt/apache/www/wq/iindex.html //給首頁寫入內容 echo "wq1,hello,world" /opt/apache/www/wq1/iindex.html
修改配置檔案,加入以下幾行
vi /opt/apache/conf/httpd.conf
Listen 192.168.0.155:80
Listen 192.168.0.160:80
Include /opt/apache/vhost/*.conf
然後註釋掉 Listen 80
vi /opt/apache/vhost/wq.conf
<VirtualHost 192.168.0.155:80>
ServerName wq
DocumentRoot /opt/apache/www/wq
<Directory "/opt/apache/www/wq/">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
vi /opt/apache/vhost/wq.conf
<VirtualHost 192.168.0.160:80>
ServerName wq1
DocumentRoot /opt/apache/www/wq1
<Directory "/opt/apache/www/wq1/">
Options Indexes FollowSymlinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
進入到/opt/apache/bin 執行
[[email protected] bin]# ./apachectl -t
[[email protected] bin]# ./apachectl start
開啟瀏覽器在位址列中輸入192.168.0.160
3.基於埠的虛擬主機的配置
ifconfig enss33:1 192.168.0.155 up
ifconfig
vi /etc/hosts
192.168.0.155 c155 //設定IP與名稱
mkdir -p /opt/apache/www/c155/8080 //建立首頁檔案
mkdir -p /opt/apache/www/c155/8081
echo "8080,hello,hello" > /opt/apache/www/c155/88080/index.html //給首頁寫入內容
echo "8081,hello,hello" > /opt/apache/www/c155/8081/index.html
編輯配置檔案
vi /opt/apache/conf/httpd.conf
Listen 192.168.0.155:8080
Listen 192.168.0.155:8081
Include /opt/apache/vhost/*.conf
vi /opt/apache/vhost/8080.conf
<VirtualHost 192.168.0.155:8080>
ServerName c155
DocumentRoot /opt/apache/www/c155/8080
<Directory "/opt/apache/www/c155/8080/">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
vi /opt/apache/vhost/8081.conf
<VirtualHost 192.168.0.155:8081>
ServerName c155
DocumentRoot /opt/apache/www/c155/8081
<Directory "/opt/apache/www/c155/8081/">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
進入/opt/apache/bin 執行
./apachectl -t
./apachectl start
開啟瀏覽器 在位址列輸入192.168.0.155:8080
開啟瀏覽器 在位址列輸入192.168.0.155:8081
4.基於域名的虛擬主機的配置
ifconfig ens33:1 192.168.0155 up
ifconfig
vi /etc/hosts
192.168.0.155 www.wq.com
192.168.0.155 www.wq1.com
ping www.wq.com
ping www.wq1.com
均能Ping通
mkdir -p /opt/apache/www/wq/ // 建立網頁目錄
mkdir -p /opt/apache/www/wq1/
echo ' wq._hello '> /opt/apache/www/wq/index.html // 給網頁寫入內容
echo 'wq1_hello' > /opt/apache/www/wq1/index.html
編輯配置檔案
vi /opt/apache/conf/httpd.conf
Include /opt/apache/vhost/*.conf
Listen 192.168.0.155:80
vi /opt/apache/vhost/wq.com.conf
<VirtualHost 192.168.0.155:80>
ServerName www.wq.com
DocumentRoot /opt/apache/www/wq.com
<Directory "/opt/apache/www/wq.com/">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
vi /opt/apache/vhost/wq1.com.conf
<VirtualHost 192.168.0.155:80>
ServerName www.wq1.com
DocumentRoot /opt/apache/www/wq1.com
<Directory "/opt/apache/www/wq1.com/">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
</VirtualHost>
進入/opt/apache/bin執行
./apachectl -t
./apachectl start
開啟瀏覽器,在位址列中輸入www.wq.com
開啟瀏覽器,在位址列中輸入www.wq1.com