Apache中,同一IP使用多網域名稱對應多個網站的方法

來源:互聯網
上載者:User

標籤:style   blog   http   color   os   io   使用   java   ar   

首先dns中確定有相應的A記錄,
abc  IN A   211.154.2.5
mail IN A   211.154.2.5

這個講的是在windows下面配置apache虛擬機器主機:
一、配置虛擬機器主機需要3個檔案
1.Apache/conf/httpd.conf
2.Apache/conf/extra/httpd-vhosts.conf (這個地版本的apache可能沒有,可自己建立,也可以不要此檔案,
而將配置直接寫在httpd.conf裡面,寫在extra/httpd-vhosts.conf只是為了管理方便,不讓httpd.conf檔案
內容很多而已)
3.C:\WINDOWS\system32\drivers\etc\hosts
①httpd.conf 找到VirtualHost example,在後面引入httpd-vhosts.conf檔案:
Include conf/extra/httpd-vhosts.conf
這個句話,高版本的apache裡面已經寫有了,只需吧Include前面的#號去掉就OK
②httpd-vhosts.conf設定檔的內容如下:
#
# DocumentRoot 是網站檔案存放的根目錄
# ServerName 是網站網域名稱, 需要跟 DNS 指向的網域名稱一致
#

#########################################################################################

# http://www.PHPnow.org
# filename: httpd-vhosts.conf
<Directory ../vhosts>
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>
NameVirtualHost *
<VirtualHost *>
    DocumentRoot ../htdocs
    ServerName default:80
    ErrorLog logs/default-error_log
</VirtualHost>
#<VirtualHost *>
#    ServerAdmin [email protected]
#    DocumentRoot "D:/htdocs/lxcms"
#    ServerName cms.weixinyixia.com:80
#    ServerAlias cms.weixinyixia.com
#    ErrorLog logs/cms.weixinyixia.com-error_log
#</VirtualHost>

=======================================================以下只是參考其他方式~=======================================================================

# Ensure that Apache listens on port 80
Listen 80
# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80
<VirtualHost *:80>
 DocumentRoot /www/deerol_com
 ServerName www.deerol.com
 # Other directives here
 #佈建網域名的目錄存取權限
 <Directory "/www/deerol_com">
      Options Indexes FollowSymLinks
      allow from all
 </Directory>
</VirtualHost>
<VirtualHost *:80>
 DocumentRoot /www/163_com
 ServerName www.163.com
 # Other directives here
 #佈建網域名的目錄存取權限
 <Directory "/www/deerol_com">
      Options Indexes FollowSymLinks
      allow from all
 </Directory>
</VirtualHost> 

以上設定中第一項(即ServerName www.deerol.com)是預設選項。若使用者訪問所指定的網域名稱不符合所有條目時採用預設項,即指向www.deerol.com。

在配置時可能遇到的情境:

1.使用網域名稱加連接埠訪問

如果需要帶連接埠訪問(這種情況很少,一般會在測試時用到)如:www.domain.com:8081 這時在配置<VirtaulHost> 後,還需要添加對該連接埠的監聽Listen 8081

2.如果伺服器上除了Apache服務外還裝了IIS(運行asp,asp.net程式),Tomcat(運行java,jsp程式)服務該如何配置?

一般的我們會把Apache預設為80連接埠,IIS可以設定為81連接埠,Tomcat設定為8080連接埠。假設有一jsp程式,在伺服器本地配置時我們可以通過http://localhost:8080/document訪問。那如何配置通過網域名稱訪問到該地址呢?

<VirtualHost *:80>  
 ProxyPreserveHost On  
 ServerName yourdomain.com  
 DirectoryIndex index.jsp  
 ProxyPass / http://localhost:8080/KBoom/
 ProxyPassReverse / http://localhost:8080/KBoom/
</VirtualHost>  

這裡我們注意到使用了代理訪問。首先開啟代理支援ProxyPreserveHost On,然後再配置正向 Proxy和反向 Proxy ProxyPass /  http://localhost:8080/KBoom (kboom為虛擬目錄) 

<摘自:http://blog.sina.com.cn/s/blog_75ad10100101m5q6.html&http://blog.csdn.net/zhanglei5415/article/details/6821066>

Apache中,同一IP使用多網域名稱對應多個網站的方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.