安裝環境
配置虛擬主機也是個不小的嘗試,已經忘了有多少個夜晚在嘗試配置lamp環境,但是到了這一步就卡頻了,網上的答案也是千奇百怪。覺得很有必要記錄一下配置的過程,一是爲了鞏固基礎,第二也是爲了給大家做個參考。
安裝環境也是一個很重要的指標,記得以前配置虛擬主機的時候,網上的答案大多是window平臺下的解決方案,Apache的版本也不是最新的。特別重要的一點是apache2.2和apache2.4的配置還是有很大差別的。我的配置環境是:Ubuntu14.04,apache2.4。
安裝步驟
在用戶的主目錄下,創建wwwroot
目錄用來作爲虛擬主機的根目錄。
sudo mkdir wwwroot (**使用root權限創建wwwroot**)
在新創建的目錄下,創建一個index.html文件用來做測試頁面。
sudo touch index.html
sudo vim index.html
編輯頁面後,頁面的內容如下:
<html>
<head>
<meta charset="utf-8"/>
</head>
<body>
<h1>test...</h1>
</body>
</html>
在apache2.4中,虛擬主機的目錄是通過/etc/apache2/sites-available中配置的,默認情況下,apache有一個默認的虛擬主機文件叫000-default.conf。我們將會複製000-default.conf文件內容到我們新的虛擬主機配置文件中。
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/yiidemo.conf
編輯該配置文件,用來指向剛纔設定的目錄。
sudo vim /etc/apache2/sites-available/yiidemo.conf
編輯後的配置如下(刪除了額外的註釋):
<VirtualHost *:80>
ServerName www.yiidemo.local
ServerAdmin webmaster@localhost
DocumentRoot /home/hehongwei/wwwroot
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
修改/etc/apache2/apache2.conf
<Directory /home/hehongwei/wwwroot>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
重啓apache服務器:
sudo service apache2 restart
修改虛擬主機文件後,禁用默認的虛擬主機配置(000.default.conf),然後啓用新的虛擬主機配置,如下所示。
sudo a2dissite 000-default.conf (**這一步不是必須的**)
sudo a2ensite yiidemo.conf
這一步,將激活yiidemo.conf配置文件。他的作用是生產一份鏈接到/etc/apache2/sites-enabled/,爲什麼這樣做呢,因爲實際上apache2加載的就是該目錄下所有的配置文件。而a2dissite和a2ensite這兩個動作,能更好的管理我們的虛擬主機。
重啓apache2服務器:
sudo service apache2 restart
配置虛擬主機,如果你是window系統,可以在C:\Windows\System32\drivers\etc找到host文件,如果你是linux系統可以在/etc/hosts找到host文件,編輯他們加上剛纔配置的虛擬主機映射的IP地址。
192.168.*.* www.yiidemo.local (**IP地址爲apache服務器所在的主機地址**)
打開瀏覽器,輸入www.yiidemo.local,不過不錯意外的話,看到的是這個結果:
如果你配置沒問題的話,那可能就是出在index.html的權限上了,稍安勿躁,我們爲wwwroot下的目錄及文件設置下可寫權限,命令如下:
sudo chmod -R 755 ~/wwwroot/
刷新一下頁面,是不是可以正常訪問了.