电竞比分网-中国电竞赛事及体育赛事平台

分享

在Apache中配置基于主機(jī)名的虛擬主機(jī)

 明天網(wǎng)吧 2015-09-19
在Apache中配置基于主機(jī)名的虛擬主機(jī)

在同一臺(tái)pc(ip:192.168.1.1)中配置三個(gè)虛擬主機(jī):
www.1.com
www.2.com
www.3.com

訪問(wèn)不同的虛擬主機(jī),可以顯示不同的頁(yè)面。

注意:以下的設(shè)置全部在Apache服務(wù)器上??!

1.
打開/etc/hosts,加入如下幾句:
192.168.1.1 www.1.com
192.168.1.1 www.2.com
192.168.1.1 www.3.com

2.
為每個(gè)虛擬主機(jī)增加一個(gè)web目錄:
比如我在/usr/local/apache2/htdocs/下新建了三個(gè)文件夾,分別對(duì)應(yīng)三個(gè)虛擬主機(jī):
文件夾1  --> www.1.com
文件夾2  --> www.2.com
文件夾3  --> www.3.com

然后在這三個(gè)目錄中各自新建一個(gè)測(cè)試的index.php,只要不一樣就行了:
1:
<html>
<body>
<?php echo "You are in 1"; ?>
</body>
</html>
2:
<html>
<body>
<?php echo "You are in 2"; ?>
</body>
</html>
3:
<html>
<body>
<?php echo "You are in 3"; ?>
</body>
</html>



3.
編輯apache的httpd.conf配置文件,我的是/usr/local/apache2/conf/httpd.conf,找到如下語(yǔ)句:
# Virtual hosts,把它下面的那一句前的#去掉(即取消注釋)
然后打開它提示的XXX/extra/httpd-vhosts.conf配置文件,修改成如下所示:

#
# Virtual Hosts
#
# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at 
# <URL:http://httpd./docs/2.2/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.


#
# Use name-based virtual hosting.
#
NameVirtualHost *:80


#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#


<VirtualHost *:80>
    ServerName *
    DocumentRoot "/usr/local/apache2/htdocs"
</VirtualHost>





<VirtualHost *:80>
    ServerAdmin webmaster@www.1.com
    DocumentRoot "/usr/local/apache2/htdocs/1"
    ServerName www.1.com
    ErrorLog "logs/www.1.com-error_log"
    CustomLog "logs/www.1.com-access_log" common
    <Directory "/usr/local/apache2/htdocs/1">
      Options Indexes FollowSymLinks
      AllowOverride None
      Order allow,deny
      Allow from all
    </Directory>
</VirtualHost>



<VirtualHost *:80>
    ServerAdmin webmaster@www.2.com
    DocumentRoot "/usr/local/apache2/htdocs/2"

    ServerName www.2.com
    ErrorLog "logs/www.2.com-error_log"
    CustomLog "logs/www.2.com-access_log" common
    <Directory "/usr/local/apache2/htdocs/2">
      Options Indexes FollowSymLinks
      AllowOverride None
      Order allow,deny
      Allow from all
    </Directory>
</VirtualHost>


<VirtualHost *:80>
    ServerAdmin webmaster@www.3.com
    DocumentRoot "/usr/local/apache2/htdocs/3"
    ServerName www.3.com
    ErrorLog "logs/www.3.com-error_log"
    CustomLog "logs/www.3.com-access_log" common
    <Directory "/usr/local/apache2/htdocs/3">
      Options Indexes FollowSymLinks
      AllowOverride None
      Order allow,deny
      Allow from all
    </Directory>
</VirtualHost>



其實(shí)就是保留  NameVirtualHost *:80  這一句,然后把剩下的刪除,再加上最后的4段,其中后三段是完全類似的,而第一段是必須要寫的!


到這里,我們已經(jīng)可以在服務(wù)器本地訪問(wèn)上述網(wǎng)站了:
在Apache服務(wù)器的瀏覽器中輸入:www.1.com/index.php, www.2.com/index.php, www.3.com/index.php 可以依次訪問(wèn)上述的三個(gè)不同的網(wǎng)站。



下面來(lái)配置一下如何在局域網(wǎng)內(nèi)訪問(wèn):

有兩種方法:
1.
如果局域網(wǎng)里已經(jīng)有了DNS服務(wù)器了,那么只要打開本地的 /etc/resolv.conf 文件,然后加入那個(gè)DNS服務(wù)器的ip就可以了,比如DNS的ip是192.168.1.100,那么加入: nameserver 192.168.1.100(不過(guò)那個(gè)DNS里要有對(duì)應(yīng)的記錄,沒(méi)有的話在那個(gè)DNS里添上就可以了)

2.
如果局域網(wǎng)里沒(méi)有DNS服務(wù)器,那么我們也可以直接在本地的host里手動(dòng)加入,就像我們之前在Apache服務(wù)器上做的:

打開本地的 /etc/hosts 文件,加入如下幾句:
192.168.1.1 www.1.com
192.168.1.1 www.2.com
192.168.1.1 www.3.com
就可以了!

在本地的瀏覽器中輸入:www.1.com/index.php, www.2.com/index.php, www.3.com/index.php 同樣可以依次訪問(wèn)在Apache上的上述的三個(gè)不同的網(wǎng)站。


完成!

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多