在利用xampp開發時候為apache設置多個項目目錄


在做畢業設計的時候由於想將工作目錄與畢業設計的目錄分離,所以有此需求:

下面兩種方法是google出來的,分別通過配置多ip和多端口實現,不是能否用單ip發布多個項目,如有方法請留言,學習一下

1.配置多個ip

簡單的說,打開httpd.conf 在最后加入如下內容:

[html]  view plain copy
  1. <VirtualHost 127.0.0.2:80>  
  2.    DocumentRoot d:/AppServ/www2  
  3.    ServerName 127.0.0.2:80  
  4. irtualHost>  
  5.   
  6.   
  7. <Directory "d:/AppServ/www2">  
  8.    Options Indexes FollowSymLinks Multiviews  
  9.    AllowOverride All  
  10.    Order Allow,Deny  
  11.    Allow from all  
  12. </Directory>  

"d:/AppServ/www2"為你的站點存放目錄:重啟apache2以后,你的虛擬主機就配置好了,以后就可以通過127.0.0.2,和127.0.0.3進入不同的站點了。

下面為詳細說明分析:

在我們安裝APACHE的時候一般默認的apache的配置是只有一個網站,這樣切換起來很不方便。其實這個問題很好解決,就是把本機的apache配置成為虛擬服務器。但是,網上大多數教程的是教用apache如何配置基於域名的虛擬主機的,而在本機調試網站的時候,一般都是用本地ip(127.0.0.1 或localhost)直接訪問,沒有用到域名。所以得把apache配置成為基於ip地址的虛擬主機。

首先,我們都知道,所有以127打頭的ip地址都應該指向本機,並不只有127.0.0.1,這點大家可以試試。 這樣一來,也就是說本機有足夠多的ip地址供你來開設虛擬主機了。

廢話少說,進入正式的配置工作,下面是apache的httpd.conf里相關配置部分( httpd.conf 位於Apache2.2\conf ): 1、Listen部分,必須直接指定端口,不指定ip地址,配置應寫為: Listen 80 2、不用像基於域名的虛擬主機那樣寫“NameVirtualHost”。

3、虛擬主機配置段:在httpd.conf 最后加上

 

[html]  view plain copy
  1. <VirtualHost 127.0.0.2:80>  
  2.    DocumentRoot d:/AppServ/www2  
  3.    ServerName 127.0.0.2:80  
  4. irtualHost>  
  5.   
  6. <VirtualHost 127.0.0.3:80>  
  7.    DocumentRoot d:/AppServ/www3  
  8.    ServerName 127.0.0.3:80  
  9. irtualHost>...  


4、然后相應的配置好各個目錄屬性,下面是一個目錄屬性的典型配置:

 

 

[html]  view plain copy
  1. <Directory "d:/AppServ/www2">  
  2.    Options Indexes FollowSymLinks Multiviews  
  3.    AllowOverride All  
  4.    Order Allow,Deny  
  5.    Allow from all  
  6. </Directory>  
  7.   
  8. <Directory"d:/AppServ/www3">  
  9.    Options Indexes FollowSymLinks Multiviews  
  10.    AllowOverride All  
  11.    Order Allow,Deny  
  12.    Allow from all  
  13. </Directory>  


重啟apache2以后,你的虛擬主機就配置好了,以后就可以通過127.0.0.1和127.0.0.2,127.0.0.3進入不同的站點了

 

 

2.配置多個端口

配置Apache及實現多站點

安裝好Apache以后,可以在瀏覽器中輸入 http://localhost測試,如果配置正常會顯示It's  Working.
更改第一個站點的根目錄:在文件Apache2.2\conf\httpd.conf中查找DocumentRoot 屬性,將后面的路徑改為你的主站點的路徑,如:D:\www\web1
為第二個Apache服務建立配置文件:復制並重命名httpd.conf為web2.conf(舉個例子而已,也可以叫my.conf等等),修改web2.conf中的Listen8080(原來為80)、ServerName localhost:8080(原來為80)、DocumentRoot"D:/www/web2"  (原來為web1)
添加第二個Apache服務:Apache安裝目錄的 bin子目錄下,使用如下命令將Apache安裝為WindowsNT服務:httpd.exe -k install -n "服務名" -f"d:\apache2.2\conf\web2.conf"
其他的命令:
將Apache安裝為Windows NT服務:
httpd -k install
指定服務的名稱,當你在同一機器上安裝多個Apache服務時,你必須為它們指定不同的名字。
httpd -k install -n "服務名"
為不同名稱的服務使用不同的配置文件,則安裝時需要指定配置文件:
httpd -k install -n "服務名" -f"c:\files\my.conf"
如果你使用的是第一個命令,也就是除 -k install外沒有其它命令行參數,那么被安裝的服務名稱將是:Apache2 ,配置文件將使用conf\httpd.conf。
移除一個Apache服務:
httpd -k uninstall
使用下述命令移除特定名稱的Apache服務:
httpd -k uninstall -n "服務名"
通常,啟動、重啟、關閉Apache服務的方法是使用 Apache ServiceMonitor工具,另外也可以使用控制台命令:NET START Apache2 和 NET STOP Apache2或者通過Windows服務控制面板。在啟動Apache服務之前,你應當使用下面的命令檢查一下配置文件的正確性:
httpd -n "服務名" -t
你可以通過命令行開關來控制Apache服務。要啟動一個已經安裝的Apache服務,可以使用:
httpd -k start apache部署多個項目
要停止一個已經安裝的Apache服務,可以使用:
httpd -k stop
httpd -k shutdown
要重啟一個運行中的Apache服務,強制它重新讀取配置文件,可以使用:

httpd -k restar


免責聲明!

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



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