我們有時候從網上下載下來的php源碼很多都是應用在網站根目錄下的,而我們又想在本地先測試一遍確定沒有問題了再上傳空間,但一換到子目錄下的時候因爲路徑問題,使得許多圖片、內容都無法顯示。
這個時候我們就需要營造一個根目錄的環境去加載這些php源碼,這就需要用到虛擬主機了。也就是將項目的子目錄映射到一個域名中,當訪問這個域名的時候相當於訪問這個項目了。這樣既能在本地運行項目,而且項目直接打包上傳空間也能直接用了。
方法/步驟
-
1.打開Apache的配置文件 httpd.conf 查看虛擬主機是否已經打開
找到下面這兩句,要開啓虛擬主機,先要將下面的第二句前面的#號去掉
# Virtual hosts 這句前面的#不用去
#Include conf/extra/httpd-vhosts.conf
-
2.打開apache\conf\extra\httpd-vhosts.conf
添加如下代碼:
<VirtualHost *:80>
DocumentRoot "D:/www/cms"
ServerName m.local.cc
ErrorLog "logs/m.local.cc-error.log"
CustomLog "logs/m.local.cc-access.log" common
<Directory "D:/www/cms">
Options Indexes FollowSymLinks
DirectoryIndex index.html index.php
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
我稍微講一下上面代碼需要改動的地方:
<VirtualHost *:80> 這裏是訪問端口,如果你的是其他端口請自行修改
DocumentRoot "D:/www/cms" 這個是項目的具體路徑,也就是你要開啓虛擬主機的項目
ServerName m.local.cc 這個(m.local.cc)是你要訪問這個項目的網址
ErrorLog "logs/m.local.cc-error.log" 指定錯誤日誌保存的文件
<Directory "D:/www/cms"> 這裏要保持和項目路徑一樣
DirectoryIndex index.html index.php 定義索引,也就是當輸入項目名,但是沒有輸入指定的訪問文件的時候就默認訪問這裏的( index.html 或index.php 如果存在的話)
-
3.打開C:\Windows\System32\drivers\etc\hosts文件
配置本地域名指向的ip,在該文件的最下面的空白處添加(這裏的網址就是你在httpd.conf中寫的網址一定要對應):
127.0.0.1 m.local.cc
經此,整個本地虛擬主機就配置完成了,然後重啓一下Apache服務器!這點很重要。
END