apache多站點配置+多端口配置+反向代理

一、Apache多站點配置 


  這種方法是配置不同的地址訪問不同的文件夾的配置

  1:修改本機的hosts文件,如下:  
   示例:
   127.0.0.1      localhost
  127.0.0.1       www.dede.com
  127.0.0.1       www.phpcms.com   
   
   2: 打開appserv的安裝目錄,找到httpd.conf文件,分別去掉下面兩行文字前面的#號。  
   #LoadModule vhost_alias_module modules/mod_vhost_alias.so   
   去掉#意思是啓用apache的虛擬主機功能。  
   
   #Include conf/extra/httpd-vhosts.conf  
   去掉這一行的#意思是從conf/extra/httpd-vhosts.conf這個文件導入虛擬主機配置。
   
   3: 打開extra目錄內的httpd-vhosts.conf文件,什麼都不管,直接在文件底部加入自己要加的虛擬主機的信息。如下面所示。   
    分別是給出一個管理員郵箱、指出此網站的根目錄、域名、和錯誤日誌存放位置。注意目錄間隔最好用/而不是/ 。    
                            
    NameVirtualHost *:80
<VirtualHost *:80>
    ServerName www.phpzend.com
    DocumentRoot E:/wamp/www/phpzend
    ServerAlias www.phpzend.com
    ErrorLog "logs/www.phpzend.com-error.log"
    CustomLog "logs/www.phpzend.com-access.log" common
</VirtualHost>
  <VirtualHost *:80>
    ServerName www.wit66.com
    DocumentRoot F:/website/phpzend
    ServerAlias www.wit66.com
    ErrorLog "logs/www.wit66.com-error.log"
    CustomLog "logs/www.wit66.com-access.log" common
</VirtualHost>
   
   *以上路徑中的斜線左斜右斜都可以。 

4. 在httpd.conf中添加相應目錄
  

#wwww.phpzend.com

<Directory "E:/wamp/www/phpzend/">

Options Indexes FollowSymLinks

AllowOverride all Order Deny,

Allow Allow from all

</Directory>

 5 將appserv的apache服務重啓,就可以了,可以在各網站的根目錄下放一個index.html文件,如果能看到,說明就對了。

二、是在同一個ip下面配置不同的端口的方法


打開appserv的安裝目錄,找到httpd.conf文件,找到:
     Listen 80
      加入:
Listen 80 
 Listen 83
 Listen 84 
然後參照虛擬主機的設置方法。不同的是:
<VirtualHost *:80> 這個後邊的端口號按自己需求更改就成了。
 如果 弄完之後 出現403錯誤 那 在httpd.conf裏找到:
<Directory />
    Options FollowSymLinks ExecCGI Indexes
    AllowOverride None
    Order deny,allow
    Deny from all
    Satisfy all
< /Directory>
更改爲
<Directory />
    Options FollowSymLinks ExecCGI Indexes
    AllowOverride None
 #    Order deny,allow
 #    Deny from all
 #    Satisfy all
< /Directory>

打開extra目錄內的httpd-vhosts.conf文件


<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs"
ServerName   127.0.0.1
</VirtualHost>

<VirtualHost *:83>
DocumentRoot "D:/WeiXin/zjhj_mall"
</VirtualHost>

三、反向代理設置:


1.修改apache的配置問價httpd.conf,加載apache的代理相關模塊

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so

2、打開extra目錄內的httpd-vhosts.conf文件,注:當有設置反向代理時,應注意站點的配置順序,反向代理的站點設置在前面,最後設置非反向代理站點

<VirtualHost *:8080>#apache的監控端口
ServerAdmin [email protected]
ServerName www.whutest.net
ProxyPreserveHost On #當啓用時,此選項將把傳入請求的"Host:"行傳遞給被代理的主機,而不是傳遞在ProxyPass中指定的主機名。
ProxyRequests Off #反向代理爲Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://192.168.1.120:8080/ #IIS端口8080,把地址www.whutest.net:8080下所有請求都代理到192.168.1.120:8080
ProxyPassReverse / http://192.168.1.120:8080/ #配置該項,隱藏具體IP地址192.168.1.120
</VirtualHost>

例如:
<VirtualHost *:84>
ProxyPreserveHost On 
ProxyRequests Off 
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://172.16.1.146:8018/
ProxyPassReverse / http://172.16.1.146:8018/
</VirtualHost>

<VirtualHost *:80>

ServerName changs.meidp.com
ProxyPreserveHost On 
ProxyRequests Off 
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://localhost:8001/
ProxyPassReverse / http://localhost:8001/
</VirtualHost>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章