国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢(xún) 在線咨詢(xún)
15158846557 在線咨詢(xún)
所在位置: 首頁(yè) > 營(yíng)銷(xiāo)資訊 > 網(wǎng)站運(yùn)營(yíng) > Linux虛擬主機(jī)配置

Linux虛擬主機(jī)配置

時(shí)間:2023-07-17 12:36:01 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-07-17 12:36:01 來(lái)源:網(wǎng)站運(yùn)營(yíng)

Linux虛擬主機(jī)配置:

一、概述

虛擬主機(jī)(Virtual Host),又稱(chēng)虛擬服務(wù)器、主機(jī)空間或是網(wǎng)頁(yè)空間,是一種網(wǎng)絡(luò)技術(shù),可以讓多個(gè)主機(jī)名稱(chēng),在一個(gè)單一的服務(wù)器上運(yùn)作,而且可以分開(kāi)支持每個(gè)單一的主機(jī)名稱(chēng)。虛擬主機(jī)可以運(yùn)行多個(gè)網(wǎng)站或服務(wù)。虛擬并非指不存在,而是指空間是由實(shí)體的服務(wù)器延伸而來(lái),其硬件系統(tǒng)可以是基于服務(wù)器群,或者單個(gè)服務(wù)器。其技術(shù)是互聯(lián)網(wǎng)服務(wù)器采用的節(jié)省服務(wù)器硬件成本的技術(shù),虛擬主機(jī)技術(shù)主要應(yīng)用于HTTP、FTP、EMAIL等多項(xiàng)服務(wù),將一臺(tái)服務(wù)器的某項(xiàng)或者全部服務(wù)內(nèi)容邏輯劃分為多個(gè)服務(wù)段位,對(duì)外表現(xiàn)為多個(gè)服務(wù)器,從而充分利用服務(wù)器硬件資源。——Wiki中對(duì)虛擬主機(jī)的解釋。

虛擬主機(jī)的實(shí)現(xiàn)方式主要有三種:基于域名的方法(Name-based)、基于IP的方法(IP-based)以及基于端口的方法(Port-based)。下面將結(jié)合apache的配置來(lái)講解虛擬主機(jī)的各種配置及應(yīng)用場(chǎng)景。

注:實(shí)驗(yàn)環(huán)境為CentOS release 6.3(Final)

二、實(shí)戰(zhàn)演練

1. http配置文件講解

httpd的默認(rèn)配置文件為:/etc/httpd/conf/httpd.conf,它主要包含三大部分,如下:

[root@Slaver conf]# grep '/<Section/>' /etc/httpd/conf/httpd.conf -n33:### Section 1: Global Environment245:### Section 2: 'Main' server configuration977:### Section 3: Virtual Hosts[root@Slaver conf]# 其中:1)Global Environment——全局配置,決定Apache服務(wù)器的全局參數(shù)。

2)Main server configuration——主服務(wù)配置,相當(dāng)于是Apache的默認(rèn)web站點(diǎn),如果我們的服務(wù)器中只有一個(gè)站點(diǎn),那么就只需要在這里配置就可以了。

3)Virtual Hosts——虛擬主機(jī),虛擬主機(jī)不能與Main Server主服務(wù)器共存,當(dāng)啟用了虛擬主機(jī)之后,Main Server就不能使用了。

與虛擬主機(jī)相關(guān)的配置項(xiàng)有:a)Listen:80指定apache的監(jiān)聽(tīng)端口,在全局配置區(qū)中設(shè)置;b)NameVirtualHost:*:80在虛擬主機(jī)區(qū)域中設(shè)置。

2. 基于域名的多站點(diǎn)配置

適用場(chǎng)景:在一臺(tái)主機(jī)上配置兩個(gè)站點(diǎn),其域名分別為:http://www.test01.com、http://www.test02.com,對(duì)應(yīng)的站點(diǎn)文件存放位置為:/var/www/html/test01和/var/www/html/test02。

滿(mǎn)足此應(yīng)用的相關(guān)配置:

a. 修改/etc/httpd/conf/httpd.conf中的配置

i.端口監(jiān)聽(tīng)開(kāi)啟:Listen 80

ii.虛擬主機(jī)配置開(kāi)啟:NameVirtualHost *:80(將前面的注釋#去掉)

b. 在/etc/httpd/conf.d/中添加站點(diǎn)的配置文件

注意:在/etc/httpd/conf.d目錄下新建站點(diǎn)配置文件,必須確保Include conf.d/*.conf開(kāi)啟。新建配置文件內(nèi)容如下:

www.test01.conf

[root@Slaver conf.d]# cat www.test01.conf <VirtualHost *:80> DocumentRoot /var/www/html/test01 ServerName www.test01.com <Directory /var/www/html/test01> Options Indexes FollowSymLinks AllowOverride All Order Allow,Deny Allow from all </Directory></VirtualHost>[root@Slaver conf.d]#www.test02.conf

[root@Slaver conf.d]# cat www.test02.conf <VirtualHost *:80> DocumentRoot /var/www/html/test02 ServerName www.test02.com <Directory /var/www/html/test02> Options Indexes FollowSymLinks AllowOverride All Order Allow,Deny Allow from all </Directory></VirtualHost>[root@Slaver conf.d]# 重啟httpd:service httpd restart,然后再瀏覽器中分別訪問(wèn)域名即可。注意:該域名訪問(wèn)的機(jī)器必須能夠解析到,如果不是公網(wǎng)的域名的話可以通過(guò)配置本機(jī)的hosts來(lái)解析。

c. 上述配置項(xiàng)分析

i.VirtualHost *:80

指定虛擬主機(jī)的IP以及端口,其中*:80表示響應(yīng)來(lái)自本機(jī)所有網(wǎng)卡的80端口的請(qǐng)求。當(dāng)然,這里也可以指定特定的IP,例如:VirtualHost 192.168.17.131:80,則它會(huì)響應(yīng)來(lái)自192.168.17.131IP的訪問(wèn)請(qǐng)求,與此同時(shí)在/etc/httpd/conf/httpd.conf中的NameVirtualHost也必須指定為192.168.17.131或*,不然的話在啟動(dòng)httpd的時(shí)候會(huì)報(bào)出如下的錯(cuò)誤:Starting httpd: [Wed Feb 04 22:30:23 2015] [warn] NameVirtualHost 192.168.17.131:80 has no VirtualHosts。

用簡(jiǎn)單的話來(lái)說(shuō),NameVirtualHost設(shè)定的與具體配置文件中VirtualHost設(shè)定的必須為一一對(duì)應(yīng),或者為*對(duì)一(NameVirtualHost為*,其他VirtualHost為具體的IP)。

ii.Options Indexes FollowSymLinks

Options中Indexes表示當(dāng)網(wǎng)頁(yè)不存在的時(shí)候允許索引顯示目錄中的文件;FollowSymLinks表示是否允許訪問(wèn)符號(hào)鏈接文件。

iii.AllowOverride All

AllowOverride表示是否允許該配置被覆蓋。例如:AllowOverride None表示不允許該Directory目錄下的訪問(wèn)控制文件(.htaccess)來(lái)改變這里的配置;AllowOverride All表示允許訪問(wèn)控制文件.htaccess來(lái)改變這里的配置。

iv.Order Allow,Deny

Order用來(lái)表示對(duì)頁(yè)面的訪問(wèn)控制順序,后面的一項(xiàng)是默認(rèn)選項(xiàng),如:Order Allow,Deny則默認(rèn)是Deny。Allow from all表示允許所有用戶(hù)。

3. 基于IP的多站點(diǎn)配置

適用場(chǎng)景:web服務(wù)器存在多塊網(wǎng)卡,有多個(gè)IP地址,這里假設(shè)有兩個(gè)IP地址,一個(gè)為:192.168.17.128,它對(duì)應(yīng)域名http://www.test01.com;一個(gè)為:192.168.17.131,它對(duì)應(yīng)域名http://www.test02.com。

a. 存在主服務(wù)器

1) 基本配置

還記得在/etc/httpd/conf/httpd.conf中提到的三大塊配置,其中就有主服務(wù)配置,假設(shè)192.168.17.128對(duì)應(yīng)主服務(wù)器,而另外一個(gè)IP192.168.17.131用于構(gòu)建兩個(gè)或多個(gè)虛擬主機(jī)。配置如下:

192.168.17.128上主服務(wù)器配置:

i.監(jiān)聽(tīng)80端口:Listen 80

ii.主服務(wù)器配置區(qū):ServerName http://www.test01.com

iii.主服務(wù)器配置區(qū):DocumentRoot /var/www/html/test01

192.168.17.131上多虛擬主機(jī)配置:

虛擬主機(jī)配置:VirtualHost 192.168.17.131:80

/etc/httpd/conf.d/中添加www.test02.conf、www.test03.conf的配置,配置內(nèi)容與“基于域名的多站點(diǎn)配置”等同。

在web瀏覽器中分別訪問(wèn):http://www.test01.com、http://www.test02.comhttp://www.test03.com會(huì)顯示各自的輸出。

注意:設(shè)置主服務(wù)器后,所有不是針對(duì)192.168.17.131的請(qǐng)求都將由主服務(wù)器來(lái)伺服;而提交給192.168.17.131卻沒(méi)有主機(jī)名或沒(méi)有Host:頭的請(qǐng)求,都將為http://www.test02.com伺服(因?yàn)榕渲梦募?,它最靠前)?br>

2) 測(cè)試場(chǎng)景

需要測(cè)試兩種情況:

一、不是針對(duì)192.168.17.131的請(qǐng)求都將由主服務(wù)器來(lái)伺服

二、提交給192.168.17.131卻沒(méi)有主機(jī)名或沒(méi)有Host:頭的請(qǐng)求,都將為http://www.test02.com伺服

現(xiàn)在為web服務(wù)器配置三個(gè)網(wǎng)絡(luò),如下圖所示:




并在本機(jī)的hosts文件中,添加如下IP與域名的對(duì)應(yīng)關(guān)系:




訪問(wèn)http://www.test04.com,頁(yè)面輸出“Welcome to access web site test01 ... ”,驗(yàn)證了不是針對(duì)192.168.17.131的請(qǐng)求都將由主服務(wù)器來(lái)伺服。

訪問(wèn)http://192.168.17.131,頁(yè)面輸出“Welcome to access web site test02 ... ”,驗(yàn)證了提交給192.168.17.131卻沒(méi)有主機(jī)名或沒(méi)有Host:頭的請(qǐng)求,都將為http://www.test02.com伺服。


b. 不存在主服務(wù)器

適用場(chǎng)景:假設(shè)web服務(wù)器有兩個(gè)IP地址(192.168.17.128和172.20.30.40),該機(jī)器內(nèi)網(wǎng)和外網(wǎng)均可以訪問(wèn),在外部,域名:http://www.test01.com指向外部地址172.20.30.40,而在內(nèi)部同樣的域名指向內(nèi)部地址192.168.17.128。

服務(wù)器可以配置為向來(lái)自?xún)?nèi)部和外部的請(qǐng)求提供同樣的內(nèi)容,只需要一個(gè)VirtualHost配置段就可以達(dá)到這個(gè)目的,服務(wù)器配置如下:

監(jiān)聽(tīng)80端口:Listen 80

配置虛擬主機(jī):NameVirtualHost 192.168.17.128:80

NameVirtualHost 172.20.30.40:80

/etc/httpd/conf.d/www.test01.conf配置內(nèi)容:

[root@Slaver conf.d]# cat www.test01.conf <VirtualHost 192.168.17.128:80 172.20.30.40:80> DocumentRoot /var/www/html/test01 ServerName www.test01.com <Directory /var/www/html/test01> Options Indexes FollowSymLinks AllowOverride All Order Allow,Deny Allow from all </Directory></VirtualHost>[root@Slaver conf.d]#現(xiàn)在從不同網(wǎng)絡(luò)提交的請(qǐng)求都會(huì)由同一個(gè)VirtualHost來(lái)伺服。

4. 基于端口的多站點(diǎn)配置

適用場(chǎng)景:讓同一個(gè)IP的不同端口伺服多個(gè)域名。例如:通過(guò)http://www.test01.com:80訪問(wèn)站點(diǎn)test01,通過(guò)http://www.test01.com:8080訪問(wèn)站點(diǎn)test02。配置要點(diǎn):同一個(gè)IP端口不同;域名相同根目錄不同

具體配置如下:

i.配置http監(jiān)聽(tīng)80和8080端口:Listen:80

Listen:8080

ii.配置NameVirtualHost:NameVirtualHost 192.168.17.128:80

NameVirtualHost 192.168.17.128:8080

iii.配置/etc/httpd/conf.d/www.test01.conf,配置如下:

[root@Slaver conf.d]# cat www.test01.conf <VirtualHost 192.168.17.128:80> DocumentRoot /var/www/html/test01 ServerName www.test01.com <Directory /var/www/html/test01> Options Indexes FollowSymLinks AllowOverride All Order Allow,Deny Allow from all </Directory></VirtualHost><VirtualHost 192.168.17.128:8080> DocumentRoot /var/www/html/test02 ServerName www.test01.com <Directory /var/www/html/test02> Options Indexes FollowSymLinks AllowOverride All Order Allow,Deny Allow from all </Directory></VirtualHost>[root@Slaver conf.d]#

5. 只允許某個(gè)網(wǎng)段訪問(wèn)站點(diǎn)

適用場(chǎng)景:發(fā)布到外網(wǎng)的web站點(diǎn),后臺(tái)管理文件夾administrator不想讓外網(wǎng)的用戶(hù)可以訪問(wèn),只允許內(nèi)網(wǎng)192.168.17.0/24網(wǎng)段的客戶(hù)機(jī)訪問(wèn)。

配置如下:

[root@Slaver conf.d]# cat www.test01.conf <VirtualHost 192.168.17.128:80> DocumentRoot /var/www/html/test01 ServerName www.test01.com ErrorLog /var/log/httpd/www.test01.err CustomLog /var/log/httpd/www.test01.access common <Directory /var/www/html/test01/administrator> Options Indexes FollowSymLinks AllowOverride All Order Allow,Deny Allow from 192.168.17.0/24 </Directory></VirtualHost>[root@Slaver conf.d]# 當(dāng)不是通過(guò)這個(gè)網(wǎng)段進(jìn)來(lái)的訪問(wèn)請(qǐng)求,會(huì)出現(xiàn)如下的提示錯(cuò)誤:




6. 只允許通過(guò)認(rèn)證的用戶(hù)訪問(wèn)站點(diǎn)

適用場(chǎng)景:當(dāng)訪問(wèn)后臺(tái)時(shí),通過(guò)提供用戶(hù)名和密碼進(jìn)行認(rèn)證,只有通過(guò)認(rèn)證的用戶(hù)才能訪問(wèn)后臺(tái)。

配置文件如下:

[root@Slaver conf.d]# cat www.test01.conf <VirtualHost 192.168.17.128:80> DocumentRoot /var/www/html/test01 ServerName www.test01.com ErrorLog /var/log/httpd/www.test01.err CustomLog /var/log/httpd/www.test01.access common <Directory /var/www/html/test01/administrator> Options Indexes FollowSymLinks AllowOverride AuthConfig AuthName "Please input username and password!" AuthType Basic AuthUserFile /etc/httpd/.htpasswd Require user houqd2012 houqd2015 Order Allow,Deny Allow from all </Directory></VirtualHost>[root@Slaver conf.d]#配置項(xiàng)代表的含義如下:

AllowOverride AuthConfig #采用認(rèn)證機(jī)制

AuthName “Please input username and password!” #認(rèn)證時(shí)顯示的提示語(yǔ)

AuthType Basic #用戶(hù)認(rèn)證類(lèi)型

AuthUserFile #認(rèn)證時(shí)用戶(hù)的賬號(hào)密碼文件

Require user houqd2012 houqd2015 #只有houqd2012和houqd2015用戶(hù)才能登陸

創(chuàng)建用戶(hù)名和密碼的命令如下:

htpasswd -cm /etc/httpd/.htpasswd houqd2012

htpasswd -c /etc/httpd/.htpasswd houqd2015

-c代表創(chuàng)建一個(gè)新文件,-m代表密碼使用MD5加密,執(zhí)行完后會(huì)生成/etc/httpd/.htpasswd文件。

效果圖如下:




三、總結(jié)

在開(kāi)發(fā)中好幾次遇到虛擬主機(jī)的配置問(wèn)題,每次都是臨時(shí)查一查解決沒(méi)有系統(tǒng)的了解,等下次碰到問(wèn)題時(shí)還是解決不了,浪費(fèi)了很多時(shí)間,這次索性集中整理一次,望更多的朋友也了解如何利用虛擬主機(jī)更好的我們的生產(chǎn)環(huán)境服務(wù)。

四、參考鏈接

a. VirtualHost Examples:http://httpd.apache.org/docs/2.4/vhosts/examples.html

b. Web服務(wù)器基礎(chǔ)之二Apache主配置文件httpd.conf:http://pvbutler.blog.51cto.com/7662323/1352360

c. 維基百科虛擬主機(jī)的解釋?zhuān)?span >http://zh.wikipedia.org/zh-cn/%E8%99%9A%E6%8B%9F%E4%B8%BB%E6%9C%BA

d. Web服務(wù)器(Apache)虛擬主機(jī)的配置:http://chenxizhuimeng.blog.51cto.com/2516314/504823

e. 教你如何實(shí)現(xiàn)Apahce的用戶(hù)認(rèn)證:http://www.linuxidc.com/Linux/2013-04/82422.htm

f. Linux中apache虛擬主機(jī)(vhost)多種配置形式:http://www.111cn.net/sys/linux/42471.htm




原文鏈接:Linux虛擬主機(jī)配置終極篇_天道酬勤-CSDN博客_linux虛擬主機(jī)配置



關(guān)鍵詞:配置,主機(jī),虛擬

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉