当前位置: 首页 > 技术支持 > 服务器维护>> 怎样使用apache做代理服务器(如何把 虚拟主机 配置成 代理服务器?)

怎样使用apache做代理服务器(如何把 虚拟主机 配置成 代理服务器?)

apache代理服务器主要由proxy模块来实现。

大家好,今天小编关注到一个比较有意思的话题,就是关于apache虚拟主机代理的问题,于是小编就整理了3个相关介绍apache虚拟主机代理的解答,让我们一起看看吧。

怎样使用apache做代理服务器(如何把 虚拟主机 配置成 代理服务器?)

文章目录:

  1. 怎样使用apache做代理服务器
  2. 如何把 虚拟主机 配置成 代理服务器?
  3. linux apache是否有正向代理

一、怎样使用apache做代理服务器

这个我也不是很清楚,我用的是小鸟云的服务器。

apache代理服务器主要由proxy模块来实现,其实实现也非常简单

  1. 修改apache/conf/http.conf文件

  2. 再在c:/windows/system32/drivers/etc/hosts文件中加一行代码就可以了

    现在如我有一个应用在tomcat下:http://localhost:8080/bbs/index.jsp.如果我要改成www.bbs.com来访问的话,so....

编辑配置文件httpd.conf

修改如下

加载模块,找到这两句,去掉#。

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_http_module modules/mod_proxy.so

虚拟主机的部分加上

NameVirtualHost *:80

<VirtualHost *:80>

  ServerAdmin webmaster@dummy-host.example.com

  ServerName www.bbs.com

  ProxyRequests Off

<Proxy *>

  Order deny,allow

  Allow from all

</Proxy>

  ProxyPass / http://127.0.0.1::8080/

  ProxyPassReverse / http://127.0.0.1:8080/

</VirtualHost>

  睁腊然后掘早配再hosts文件中加入

127.0.0.1    www.bbs.com

  判指重启apache,OK了。www.bbs.com/bbs/index.jsp,或者,直接把bbs里的东西放到root下。www.bbs.com.

二、如何把虚拟主机 配置成 代理服务器?

一般来说,代理服务器需要在虚拟主机上运行一个代理服务程序,如tproxy等。 因为虚拟主机通常只能运行web程序,你看看你的虚哗液拟主机支持哪种语言凳坦,如linux的支持PHP/Python等,WIndows的支持ASP, ASP.net等。然后你去百度或者Google搜索 “语言 代理服务器” ,如枣芦桐 “PHP 代理服务器”, 将程序下载下来安装到你的虚拟主机上就可以了。如果你的虚拟主机支持PHP,你可以看看 Phpsocks5,网址: 一般的虚拟主机不支持 SSH/VPN做代理,如果要支持这些你必须买 VPS 。一般的虚拟主机的apache2你不能控制他的配置文件,所以你也不能将其配置成代理服务器。

三、linux apache是否有正向代理

1. 正向代理

配置正向代理很简单,此处我们配置vhost来实现代理, 只需要在浏览器的Proxy选项里加入你的Apache配置的vHost主机即可

1.1 开启Apache代理模块并引入vhost配置文件

早http.conf开启代理模块

LoadModule proxy_module modules/mod_proxy.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

引入vhost文件

Include conf/extra/httpd-vhosts.conf

如果你想监听别的端口, 修改Listen参数

Listen 80

Listen 8087

Listen 8088

将想监听的端口全都写上,相应的, 在vhost文件里写上

NameVirtualHost *:80

NameVirtualHost *:8087

NameVirtualHost *:8088

NameVirtualHost表示vhost匹配的请求的ip和端口那些会取扫描vhost

1.1 Apache配置 httpd-vhosts.conf(以Windows下为例)

<VirtualHost *:80>

ServerAdmin prograsliu@gmail.com

DocumentRoot "D:/www/test"

ServerName www.test.com

ServerAlias test.com

ErrorLog "logs/test.com-error.log"

CustomLog "logs/test.com-access.log" common

Alias /sublook "D:/www/test/look/sublook/"

<Directory "D:/www/test">

Options FollowSymLinks

AllowOverride All

Order allow,deny

Allow from all

</Directory>

#正向代理设置

ProxyRequests On

ProxyVia On

<Proxy *>

Order deny,allow

Deny from all

Allow from 127.0.0.1

</Proxy>

</VirtualHost>

先看

<VirtualHost *:80>

  VirtualHost 后面的参数表示的此卖是该VHost的IP/域名/和端口, 你可以写 :

  (1) IP: port, 例如 <VirtualHost 175.2.22.65:8088>, 访问的时候通过IP访问

(2) Domain, 例如 <VirtualHost www.test1.com>, 访问的时候通过域名访问, 也可以指定里面的ServerName来指定域名

(3) *, 表示匹配所有对Apache监听主机的请求, 只要是apache监听到的请求都可以匹配该虚拟主机

此处表示的就是监听所有80端口的请求, 但是由于ServerName里写了www.test.com, 所以这个vhost匹配的是www.test.com:80,

  

  现在看正向代理设置那一段

ProxyRequests On:开启Apache正向代理

ProxyVia On:控制位于代理服务器链中的代理请求的流向

  引用Apache2.2官方文档中对ProxyVia的解释如下:

如果设咐扒念置为默认值Off ,将不会采取特殊的处理。如果一个请求或应答包含"Via:"头,将不进行任何修改而直接通过。

如果设置为On每个请求和应答都会对应当前主机得到一个"Via:"头。

如果设置为Full ,每个产生的"Via:"头中都会额外加入Apache服务器的版本,以"Via:"注释域出现。

如果设置为Block ,每个代理请求中的所有"Via:"头行都将被删除。且不衡困会产生新的"Via:"头。

<Proxy *>...</Proxy>:用来控制谁可以访问你的代理

1 <Proxy *>

2 Order deny,allow

3 Deny from all

4 Allow from 127.0.0.1

5 </Proxy>

    此处设置为本机可以使用代理,真正使用的时候就自己设置了

到此,以上就是小编对于apache虚拟主机代理的问题就介绍到这了,希望介绍关于apache虚拟主机代理的3点解答对大家有用。


服务器购买/咨询热线:1563700917115617636856

本文链接:http://www.sqxnmj.com/jishuzhichiyuweihu/11422.html
tags:
腾讯云服务器特惠

  • 关注微信
是否收录:

猜你喜欢

微信公众号