編程學習網 > 服務器 > Apache > Apache中通過配置http.conf綁定多個域名以及二級域名的方法
2014
11-07

Apache中通過配置http.conf綁定多個域名以及二級域名的方法

Apache是最流行的HTTP服務器軟件之一,其以快速、可靠(穩定)而著稱,并且可通過簡單的API擴展,Perl/Python解釋器可被編譯到服務器中,完全免費,并且源代碼全部開放。如果有自己的服務器或者VPS, 并且不想為了方便而購買昂貴的控制面板的話,那自己動手配置Apache就成了一門必修課了。下面簡單的介紹了如何通過設置Apache的 http.conf文件,進行多個域名以及其相關的二級域名的綁定(假設我們要綁定的域名是icultivator.com和icultivator.cc,二級域名是 blog.icultivator.com,獨立IP為72.167.11.30).

apache怎么綁定多個域名
打開http.conf
1.ServerName 127.0.0.1 修改成ServerName 72.167.11.30
2.#NameVirtualHost * 修改成"NameVirtualHost 72.167.11.30"
3.在文件最后面有虛擬主機格式:

#<VirtualHost *>
# ServerAdmin [email] admin@xxx.com[/email]
# DocumentRoot /www/wwwroot/xxx
# ServerName xxx.com
# ErrorLog logs/xxx.com-error_log
# CustomLog logs/xxx.com-access_log common
#</VirtualHost>

簡單的添加:

<VirtualHost 72.167.11.30>
    DocumentRoot /www/wwwroot
    ServerName 72.167.11.30
</VirtualHost>
<VirtualHost 72.167.11.30>
    DocumentRoot www/wwwroot/xxx
    ServerName xxx.com
</VirtualHost>

<VirtualHost 72.167.11.30>
    DocumentRoot www/wwwroot/xx
    ServerName xx.cc
</VirtualHost>

日志文件的話也可以按照自己的路徑添加。

Apache如何添加二級域名

httpd.conf 中需要打開mod_rewrite功能,具體操作就是,在httpd.conf 的最后,添加以下內容:

RewriteEngine on
RewriteMap lowercase int:tolower
RewriteMap vhost txt:/etc/httpd/vhost.map
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/$1

其中的 /etc/httpd 是你的 apache 服務器配置文件所在路徑,根據實際情況更改(例如在/etc/httpd/下面)。然后,在這個所在路徑的目錄下創建一個文件: vhost.map,內容為:

www.icultivator.com /www/wwwroot/icultivator
www.icultivator.cc /www/wwwroot/icultivator
blog.icultivator.com /www/wwwroot/icultivator/blog

最后,在網站根目錄 /www/wwwroot/下,創建對應目錄就可以了。如果需要增加,修改或者刪除域名,子域名,僅僅需要更改vhost.map文件,而不用重啟apache進程。

掃碼二維碼 獲取免費視頻學習資料

Python編程學習

查 看2022高級編程視頻教程免費獲取