Apache配置httpd-vhosts虛擬主機總結及注意事項

文章轉載自 必優博客 http://www.biuuu.com/

常常使用Apache虛擬主機進行開發和測試,但每次須要配置虛擬主機時都習慣性的ctrl+c和ctrl+v,此次因爲重裝系統,須要配置一個新的PHP開發環境虛擬主機,因而總結一下Apaceh配置httpd-vhosts虛擬主機使用方法和步驟,便於查找和使用。
php

開發環境:WAMP
網址:http://www.wampserver.com/en/
html

實例一,Apaceh配置localhost虛擬主機步驟
1,用記事本打開apache目錄下httpd.conf文件(如:D:\wamp\bin\apache\apache2.2.8\httpd.conf),找到以下模塊
linux

  1. #Virtual hostsweb

  2. #Include conf/extra/httpd-vhosts.confapache

去掉前面的#,這樣就開啓了httpd-vhosts虛擬主機文件。這時候重啓wamp環境,沒法打開localhost,須要在httpd-vhosts.conf配置一下。瀏覽器

2,用記事本打開httpd-vhosts文件,配置好localhost虛擬主機,參照httpd-vhosts文件中實例,修改爲以下:ide

  1. <VirtualHost *:80>測試

  2. ServerAdmin webmaster@dummy-host.localhostthis

  3. DocumentRoot "D:\wamp\www"spa

  4. ServerName localhost

  5. ServerAlias localhost

  6. ErrorLog "logs/dummy-host.localhost-error.log"

  7. CustomLog "logs/dummy-host.localhost-access.log" common

  8. </VirtualHost>

修改配置以下:
DocumentRoot 修改成本地wamp環境下的www目錄(如:D:\wamp\www)
ServerName改成localhost

3,重啓Apache,發現localhost能夠正常打開,配置localhost比較簡單。

實例二,Apaceh配置test.biuuu.com虛擬主機步驟

1,方法同上,複製配置代碼修改以下:

  1. <VirtualHost *:80>

  2. ServerAdmin test@biuuu.com

  3. DocumentRoot E:\ProjectRoot\

  4. ServerName test.sallency.com

  5. ErrorLog "logs/dummy-host2.localhost-error.log"

  6. CustomLog "logs/dummy-host2.localhost-access.log" common

  7. </VirtualHost>

2,打開host文件(C:\WINDOWS\system32\drivers\etc\hosts),增長一行代碼

  1. 127.0.0.1       test.sallency.com

3,在瀏覽器中打開test.sallency.com,發現以下錯誤403 Forbidden錯誤
Forbidden You don't have permission to access / on this server.

分析:這主要是目錄訪問權限沒有設置,須要設置對目錄的訪問權!

4,打開httpd文件,找到以下語句

  1. <Directory />

  2. Options FollowSymLinks

  3. AllowOverride All

  4. Order deny,allow

  5. Deny from all

  6. </Directory>

複製以上代碼,並進行目錄修改,把/替換爲E:\WebRoot\biuuu,修改virtualHost代碼以下

  1. <VirtualHost *:80>

  2. ServerAdmin test@biuuu.com

  3. DocumentRoot E:\ProjectRoot\

  4. ServerName test.sallency.com

  5. ErrorLog "logs/dummy-host2.localhost-error.log"

  6. CustomLog "logs/dummy-host2.localhost-access.log" common


  7. <Directory E:\ProjectRoot\>

  8. Options FollowSymLinks

  9. AllowOverride All

  10. Order deny,allow

  11. Deny from all

  12. </Directory>


  13. </VirtualHost>

在瀏覽器中測試發現仍是打不開,提示如上403 Forbidden錯誤,修改其中的Deny from all爲allow from all

5,重啓Apache,虛擬主機配置成功!

注意事項
1,目錄路徑,如E:\ProjectRoot\

2,訪問權限,如上Deny from all修改成allow from all

3,host文件,配置虛擬域名host指向
4,httpd文件,打開Include conf/extra/httpd-vhosts.conf模塊
5,httpd-vhosts文件,配置虛擬主機

6,還有多是linux 的 selinux 防火牆致使這個緣由,切記切記

使用Apaceh配置httpd-vhosts虛擬主機對於開發人員來講比較簡單,但卻很是重要,僅供參考!

參考資料:

http://httpd.apache.org/docs/2.2/vhosts/

http://httpd.apache.org/docs/2.0/vhosts/examples.html

顧銀鑫 注:如發生Fatal error: Allowed memory size of 8388608 bytes exhausted錯誤

修改php.ini設置memory_limit = 12M(默認8M)

或只須要在你的程序頭部加入: ini_set("memory_limit","12M");

相關文章
相關標籤/搜索