1. 程式人生 > >apache配置虛擬主機以及虛擬目錄詳解

apache配置虛擬主機以及虛擬目錄詳解

一、apache虛擬主機的配置

1、首先在apache的安裝目錄下找到conf目錄下找到httpd.conf檔案

然後搜尋hosts找到 把前面的井號去掉即可啟動虛擬主機


2、然後在apache的安裝目錄下找到conf目錄下的extra找到httpd-vhosts.conf檔案

在檔案最後新增類似我下面的配置,詳細引數見說明

我這裡以myvirtualhost.com為例

  1. #配置我們自己的虛擬主機  
  2. <VirtualHost *:80>  
  3.     #修改文件根路徑  
  4.     DocumentRoot "D:/Program Files (x86)/myenv/apache2.2.25/htdocs"  
  5.     #主機名稱  
  6.     ServerName myvirtualhost.com  
  7.     #歡迎頁面  
  8.     DirectoryIndex index.html  
  9.     <Directory "D:/Program Files (x86)/myenv/apache2.2.25/htdocs">  
  10.     Options -Indexes FollowSymLinks  
  11.     AllowOverride None  
  12.     Order allow,deny  
  13.     Allow from all  
  14.     </Directory>  
  15.     #錯誤日誌存放位置  
  16.     ErrorLog "logs/myvirtualhost.com-error.log"  
  17.     CustomLog "logs/myvirtualhost.com-access.log" common  
  18. </VirtualHost>  

3、在host檔案中新增虛擬主機  高亮部分


4、修改完成後重啟Apache伺服器,然後再瀏覽器位址列輸入http://myvirtualhost.com即可看到你在該目錄下放置的

歡迎頁面

目錄配置引數說明
  1. #這是資料夾訪問許可權設定  
  2. # <Directory D:/Program Files (x86)/myenv/apache2.2.25/htdocs/zend/myzf/public/>  
  3. #Indexes 的作用就是當該目錄下沒有 index.html 檔案時,就顯示目錄結構,去掉 Indexes,Apache 就不會顯示該目錄的列表了。  
  4. #要禁止 Apache 顯示目錄結構列表,只需將 Option 中的 Indexes 去掉即可。  
  5. #MultiViews 使用"MultiViews "搜尋,即伺服器執行一個隱含的檔名模式匹配,並在其結果中選擇。  
  6. #設定後,在位址列內輸入index.php 可以顯示頁面。在位址列內輸入index同樣可以顯示index.php頁面  
  7. #【備註:在Indexes前,加 + 代表允許目錄瀏覽;加 – 代表禁止目錄瀏覽。】  
  8. # Options -Indexes FollowSymLinks MultiViews  
  9. #Options FollowSymLinks  
  10. #是否允許覆蓋 為了安全我這裡選擇不允許 當然如果要使用框架的話就要開啟rewrite 這裡也要變成允許,具體情況具體分析  
  11. #AllowOverride None  
  12. #允許所有  
  13. #Order allow,deny  
  14. #Allow from all  
  15. #</Directory>  


二、apache虛擬目錄的配置

1、首先在apache的安裝目錄下找到conf目錄下找到httpd.conf檔案

搜尋DocumentRoot  找到下面的位置 自定義的時候可以把這個關閉 ,不關閉好像也沒影響


2、找到<IfModule>這塊,加入下面的程式碼

  1. # 虛擬目錄,訪問D盤下面的web目錄  
  2. <IfModule dir_module>  
  3.     # 設定預設載入頁面  
  4.     DirectoryIndex index.html index.htm index.php  
  5.     # 設定站點別名,別名與訪問路徑是相關的,取任何名稱都可以(除特殊)  
  6.     Alias /myweb "D:/web"  
  7.     <Directory D:/web>  
  8.     # 設定訪問許可權  
  9.         Order allow,deny  
  10.     Allow from all  
  11.     </Directory>  
  12. </IfModule>  


修改完成後重啟Apache伺服器 在瀏覽器中輸入:http://localhost/myweb/xx.php 來訪問 D:/web 下的檔案