Apache反向代理的配置


Apache反向代理的配置

一: Mac系統自帶apache服務器

1. 查看apache版本命令如下:
   sudo apachectl -v

2. 啟動apache
   sudo apachectl start

3. 重啟apache
   sudo apachectl restart

二:概念描述
apache代理分為正向代理和反向代理:

1、正向代理: 客戶端無法直接訪問外部的web,需要在客戶端所在的網絡內架設一台代理服務器,客戶端通過代理服務器訪問外部的web(需要在客戶端的瀏覽器中設置代理服務器).

2、反向代理: 客戶端能訪問外部的web,但是不能訪問目標web,目標web所在的網絡內一台機器充當目標web的代理,客戶端直接訪問代理就像訪問目標web一樣.

更多的正向代理和反向代理 請baidu或google。

三:配置如下:

1. cd /etc/apache2 進入apache2的配置。
2. sudo vi httpd.conf (進入httpd.conf文件)查看。
2-1 備份原來的文件
sudo cp /etc/apache2/httpd.conf /etc/apache2/httpd.conf.backup
3. 檢查代理模塊是否開啟,如果沒有打開,去掉下面代碼前面的注釋符號 #

LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_connect_module libexec/apache2/mod_proxy_connect.so
LoadModule proxy_ftp_module libexec/apache2/mod_proxy_ftp.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
LoadModule proxy_balancer_module libexec/apache2/mod_proxy_balancer.so(負載均衡的功能,單純的反向代理不需要注釋)

4. 在httpd.conf的末尾添加如下代碼:

<VirtualHost *:80>
      ServerName ss.xx.com 
      ProxyRequests off  
      Header set Access-Control-Allow-Origin *
      <Proxy *>
          Order deny,allow
          Allow from all
      </Proxy>
      <Location /xxyy>
          ProxyPass http://localhost:8892/
          ProxyPassReverse http://localhost:8892/
      </Location>
      <Location /ofc>
        ProxyPass http://localhost:8894/
        ProxyPassReverse http://localhost:8894/
    </Location>
</VirtualHost>

*:80   是指任何服務器且端口號是80端口。
ServerName: 指資源文件的指向的服務器名稱(在hosts文件需要綁定 127.0.0.1 ss.xx.com)。
ProxyPass 和 ProxyPassReverse 及 http://localhost:8892/ 是我們請求真正的目的服務器。
比如我們在瀏覽器中輸入 http://192.168.xx.xx:80/xxyy時候,頁面會反向代理會返回 http://localhost:8892/ 的首頁;
當我們在瀏覽器中輸入 http://192.168.xx.xx:80/ofc 的時候,頁面會反向代理會返回 http://localhost:8894/ 的首頁;
以上就是最基本的使用apache配置代理轉發請求。


免責聲明!

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



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