修改 Window 裡的 hosts 檔案,連結虛擬機裡的網站

個人開發時,可以修改 Window 裡的 hosts 檔案,來做小量網址的 IP 解析,進而達到連結到虛擬機裡的網站

在附屬應用程式中,記事本位置按滑鼠右鍵,選擇以系統管理員身份執行記事本軟體

20160322-01

先選擇所有檔案,再開啟 c:\windows\system32\drivers\etc\hosts

20160322-02

加入你虛擬機的 DNS 資訊

20160322-03

然後打開 VirtualBox 進入你的虛擬機,本範例使用 IP 為 192.168.1.15,此虛擬機使用橋接網路卡方式,所以可以內部互連,也可以透過無線寬頻分享器連到外面網路

首先要設定 httpd.conf 開啟虛機主機功能,讓 httpd 服務可以讀取 /etc/httpd/conf.d/*.conf 設定檔

[root@halley conf.d]# vim /etc/httpd/conf/httpd.conf

在 /etc/httpd/conf.d/ 底下建立 halley.conf 和 halley.yamaou.lisa.conf 設定檔

[root@halley conf.d]# pwd
/etc/httpd/conf.d
[root@halley conf.d]# ll
total 24
-rw-r--r-- 1 root root 325 Mar 22 09:58 halley.conf
-rw-r--r-- 1 root root 442 Mar 22 08:58 halley.yamaou.lisa.conf
-rw-r--r-- 1 root root 334 Mar 22 09:54 localhost.conf
-rw-r--r-- 1 root root 674 Feb  9 18:41 php.conf
-rw-r--r-- 1 root root 392 Feb 10 01:29 README
-rw-r--r-- 1 root root 299 Jan 22 16:59 welcome.conf

這是 halley.conf 的內容

<Directory "/var/www/html">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost *:80>
    ServerName    halley
    DocumentRoot  /var/www/html
    CustomLog     /var/log/httpd/halley_log common
    ErrorLog      /var/log/httpd/halley_error_log
</VirtualHost>

這是 halley.yamaou.lisa 的內容

<Directory "/home/yamaou/public_html/study/lisa">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost *:80>
    ServerName    halley.yamaou.lisa
    ServerAlias   halley.yamaou.lisa
    DocumentRoot  /home/yamaou/public_html/study/lisa
    CustomLog     /var/log/httpd/halley.yamaou.lisa_log common
    ErrorLog      /var/log/httpd/halley.yamaou.lisa_error_log
</VirtualHost>

然後重啟虛擬機 httpd 服務

回到 Windows,輸入 http://halley/phpmyadmin,會連到 http://192.168.1.15/phpmyadmin/

20160322-04

連到 http://halley.yamaou.lisa,原本位置為 http://192.168.1.15/~yamaou/lisa/

20160322-05

以上例來看,http://halley.yamaou.lisa,我選擇用「主機名稱 + 帳號 + 資料夾」來當網址
更正,後來已經改為 http://lisa.yamaou.halley/「資料夾 + 帳號 + 主機名稱」,不會有任何影響,只是符合規範而以。

注意!由於我們只是修改了 Windows 的 hosts 檔案,所以只有你自己輸入 http://halley 或 http://halley.yamaou.lisa 可以由 Windows 裡的 hosts 檔案轉到內部 IP,要是公司內其它人輸入 http://halley 或 http://halley.yamaou.lisa 是無效的。
若要讓公司內部的人都可以使用 http://halley 或 http://halley.yamaou.lisa 連到虛擬機網站,那麼就要使用虛擬機來架設 Name Server 服務,然後每一台 Windows 的 DNS 指向要先連向虛機機,由虛擬機來做解析。