【指導師父】 王津 CTO 天津千行時線科技有限公司
1 前言
虛擬主機和虛擬目錄的用處和區別很大,需要一番深究。在windows/Linux/Mac上配置也有差異。
區別這兩個東西,是爲了更方便的發佈和部署你的項目!!!
虛擬目錄,你在發佈的時候,會多一個project目錄,去不掉,工程項目過大的時候。
虛擬主機,直接是域名+index.php首頁,方便發佈,而且域名中有你的工程名,更容易區分項目。
2 虛擬目錄和虛擬主機
一般在訪問的時候,用的都是http://localhostm 或者 http://127.0.0.1 來訪問 ,這是系統的根目錄訪問形式,也是虛擬目錄的訪問形式。
想配置虛擬主機,如改成:http://findfile.localhost/XXXXX的形式去訪問你的東西。需要明白:
- http://findfile.localhost 是你的域名,如同www.baid.com一樣,工程名findfile嵌入其中
- XXXXX 是你的項目 ,你做的所用東西
3 虛擬主機配置
第一步:想改成虛擬主機,需要去改C盤下添加虛擬主機。
打開CMD,去一個文件夾。輸入 cd C:\Windows\System32\drivers\etc
裏面的文件目錄:
找到 hosts文件,記事本打開,在127.0.0.1 localhost 下面一行添加如下代碼:
127.0.0.1 findfile.localhost (注意對齊即可)
第二步 配置Apache服務器將其虛擬主機的功能添加上,並打開。
在windows上找到Apache安裝地址,我用的是wamp集成環境,自己裝的Apache服務器,道理也一樣,找到安裝目錄即可。
截圖如下:
幹2件事!!!!!!
第一件事:
進入:D:\wamp\bin\apache\apache2.2.22\conf這個目錄
目標文件是httpd.conf
打開並修改2處地方:
找到
# Virtual hosts
#Include conf/extra/httpd-vhosts.conf
取消#註釋 這樣就可以導入使用httpd-vhost.conf這個文件。
找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
取消#註釋。這樣在重啓Apache以後,加載虛擬主機這個功能模塊了
第二件事:
進入:D:\wamp\bin\apache\apache2.2.22\conf\extra這個目錄
找到虛擬主機的英文名稱(簡寫的),vhosts,這個目錄下有衆多的Apache功能配置文件。
目標文件是httpd-vhost.conf
打開並作如下修改:
<VirtualHost *:80>
ServerName findfile.localhost
ServerAdmin [email protected]
DocumentRoot "d:/wwwroot/findfile.localhost/"
<Directory />
Options FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
<Directory d:/wwwroot/findfile.localhost/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog "logs/dummy-host2.example.com-error.log"
CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>
- ServerName後面是虛擬主機的名稱,需要和hosts這個文件添加的虛擬主機名一致
- DocumentRoot後面是虛擬主機存放文件的目錄,想放哪放哪,但要知道這是你的項目所存儲的位置。【手動創建】
- Directory後面是解決虛擬主機的目錄下文件的訪問權限問題【這個後面的路徑需要自己手動創建!】
注:<VirtualHost *:80> 配置內容1 </VirtualHost> 這代表一個虛擬主機的配置。
如果你想再加一個虛擬主機,在後面再加一個<VirtualHost *:80> 配置內容2 </VirtualHost>即可。
這意味着,你可以加無數個虛擬主機。 配置內容裏面主要是ServerName參數不一樣。