apache php配置 虛擬目錄 和 虛擬主機 多域名配置 原理解析


虛擬目錄配置

就是說,我們放項目放在D盤,F盤,而不是默認的www文件夾下也可以訪問。比如這里,我在

  1. D:/PHP/work   

放入的項目文件。

在httpd.conf加入: 

(位置一般是在 </IfMoudule>這個標簽下面)

#判斷是否存在dir_module 這個模塊  

<IfModule dir_module>  

    #設置歡迎界面  

    DirectoryIndex index.php index.html index.htm  

    #配置別名,就是瀏覽器訪問時用的。 localhost/ws  

    Alias  /ws "D:/PHP/work"  

    <Directory "D:/PHP/work">  

    #權限,只針對當前的目錄而言  

    Order allow,deny  

    #允許所有人訪問  

    Allow from all  

    </Directory>  

</IfModule>  

重啟apache

http://localhost/ws  就可以訪問了。

 配置虛擬主機

1: 還是httpd.conf這個文件。搜索“vhosts”

把include前的就#刪掉。

include就是把那個文件包含進來。

2: 編輯 apache2.2.22\conf\extra\httpd-vhosts.conf.

在最下面添加:

<VirtualHost 127.0.0.1:80>  

    #你的網站目錄  

    DocumentRoot "D:/PHP/work"  

    #你網站的域名  

    ServerName www.gaotong2055.com  

    ErrorLog "logs/dummy-host2.example.com-error.log"  

    CustomLog "logs/dummy-host2.example.com-access.log" common  

    #權限設置  

    Order allow,deny  

    Allow from all  

</VirtualHost>  

3: 修改windows  hosts文件

首先,我們要明白為什么訪問localhost就可以訪問到我們的apache主頁。

解析域名的時候,首先是從本地的hosts文件開始的。

如果查不到,才會去DNS服務器查詢(這個就不多說了)。

如果你在這里面寫一行:127.0.0.1     www.baidu.com 

百度你是肯定上不了。因為訪問的是你自己的機器。

hosts 就是一個映射(域名和IP的對應,localhost也可以說是一個域名) localhost  ->  127.0.0.1

找到C:\WINDOWS\system32\drivers\etc\hosts ,修改如下

不多解釋,這就是為什么計算機認識localhost的原因。

127.0.0.1       localhost  

127.0.0.1       www.gaotong2055.com  


4、最后別忘了修改我們的DocumentRoot

 

還是httpd.conf   搜索:“DocumentRoot”  注釋掉,修改為:

#DocumentRoot "c:/wamp/www/"  

DocumentRoot "D:/PHP/work"  


現在輸入:

www.gaotong2055.com , 就可以訪問我們的網站了

 

PS:當然了,這個方法只適合自娛自樂了,只有在自己的機器上可以用www.gaotong2055.com來訪問。

因為我們並沒有注冊域名什么的。 說白了,和用localhost訪問是一樣的。

多域名配置

就是一個主機IP , 有多個域名,每個域名要對應不同網站(注意:不是同一個網站)。

比如,我想在添加一個域名: www.gaotong.com  訪問  

D:/PHP/work2  

這個項目。

 

方法1: 通過端口區分。

原理就是很據端口區分,apache是可以監聽多端口的。這個方法就是在域名配置里面寫個其它的端口。

方法2: 使用*配符 配置httpd-vhosts.conf

把原來的<VirtualHost 127.0.0.1:80> 改為 <VirtualHost *:80>就可以了。

#域名1  

<VirtualHost *:80>  

    #你的網站目錄  

    DocumentRoot "D:/PHP/work"  

    #你網站的域名  

    ServerName www.gaotong2055.com  

    ErrorLog "logs/dummy-host2.example.com-error.log"  

    CustomLog "logs/dummy-host2.example.com-access.log" common  

    Order allow,deny  

    Allow from all  

</VirtualHost>  

  

#域名2  

<VirtualHost *:80>  

    #你的網站目錄  

    DocumentRoot "D:/PHP/work2"  

    #你網站的域名  

    ServerName www.gaotong.com  

    ErrorLog "logs/dummy-host2.example.com-error.log"  

    CustomLog "logs/dummy-host2.example.com-access.log" common  

    Order allow,deny  

    Allow from all  

</VirtualHost>  

 

http://blog.csdn.net/gladyoucame/article/details/8555287


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM