前言:爲了方便,仍是先讓你們知道怎麼去創建虛擬主機吧(網站配置),本文基於windows,linux配置是同樣的,只是文件所在位置不一樣,找到作相應修改便可。都是基礎教程大神繞道 php
首先咱們打開httpd.conf找到Include conf/extra/httpd-vhosts.conf這一行去掉前面的#這樣apache就會載入extra/httpd-vhosts.conf這個文件,咱們的虛擬主機內容就創建在這個文件裏面 html
而後打開extra/httpd-vhosts.conf(位置在apache安裝目錄下conf/extra/httpd-vhosts.conf)裏面會有這麼一段代碼 linux
1 | <VirtualHost *:80> |
2 | ServerAdmin webmaster@dummy-host2.hleclerc-PC.ingenidev |
3 | DocumentRoot "C:/Dev/Projets/WampServer2-64b/install_files_wampserver2/bin/apache/Apache2.2.17/docs/dummy-host2.hleclerc-PC.ingenidev" |
4 | ServerName dummy-host2.hleclerc-PC.ingenidev |
5 | ErrorLog "logs/dummy-host2.hleclerc-PC.ingenidev-error.log" |
6 | CustomLog "logs/dummy-host2.hleclerc-PC.ingenidev-access.log" common |
7 | </VirtualHost> |
這是一段事例代碼其中<VirtualHost *:80>表示虛擬主機配置的開始,星號表示匹配全部ip也能夠指定IP,好比只監聽127.0.0.1(本地)後面的80表示監聽80端口 web
ServerAadmin 表示服務器管理員,寫個email好了 apache
DocumentRoot 表示這個網站的跟目錄位置好比d:/www/test 編程
ServerName 表示網站域名好比www.test.com windows
在這一行下面還能夠寫一行ServerAlias 表示的是域名的其餘形式,在有二級域名的狀況下將會用到,能夠寫成*.test.com 匹配全部,固然若是你想寫成blog.test.com qq.test.com也是沒有問題的 瀏覽器
ErrorLog 表示的是錯誤日誌存放位置爲了區分通常會用域名做爲名字好比ErrorLog 「logs/test.com-error.log」 安全
CustomLog 表示的是訪問日誌存放的位置,當瀏覽量十分大的時候這個最好關掉在前面加個#由於這個日誌文件會佔用很大的磁盤空間固然大小其實也是能夠控制的好比CustomLog 「logs/test.com-access.log 1M」這樣日誌文件就不會超過1M了 服務器
理論上這樣就行了能夠用了但在實際使用過程當中咱們一般會加上
1 | <Directory "d:/www/test"> |
2 | Options FollowSymLinks Includes |
3 | AllowOverride None |
4 | Order allow,deny |
5 | Allow from all |
6 | </Directory> |
這段代碼中AllowOverride 設置爲 None 時, .htaccess 文件將被徹底忽略。當此指令設置爲 All 時,全部具備 「.htaccess」 做用域的指令都容許出如今 .htaccess 文件中。其中Options 別寫Indexes禁止目錄索引,安全起見。
1 | Order allow,deny |
2 | Allow from all |
這兩句呢是控制訪問順序,這裏是優先考慮allow,
也能夠寫成Order deny,allow這樣就優先考慮deny,好比若是你要禁止ip爲127.0.0.1的用戶能夠這樣寫
1 | <Directory "d:/www/test"> |
2 | Options FollowSymLinks Includes |
3 | AllowOverride None |
4 | Order deny,allow |
5 | Allow from all |
6 | Deny from 127.0.0.1 |
7 | </Directory> |
爲了讓apache自動查找index.php運行咱們打開httpd.conf找到
<IfModule dir_module> DirectoryIndex index.html </IfModule>
修改爲
<IfModule dir_module> DirectoryIndex index.php index.html </IfModule>
stop是中止,restart是重啓,咱們點restart好了一個虛擬主機配置好了(每次修改配置都要重啓)
接下來打開hosts(通常位置C:\WINDOWS\system32\drivers\etc)在最後加上127.0.0.1 www.test.com而後重啓瀏覽器
在d:/www/test下創建index.php 寫入<?php echo 「hello vhost」?>
在地址欄輸入www.test.com看到hello vhost了麼
好了vhost的內容就這麼多了,詳細的apache設置之後會一步一步介紹
豬哥每日一貼教你們編程技術,很是適合新人學習,歡迎轉載,務必帶上原創出處!
原文:apache建立虛擬主機