当前位置首页 > Apache知识

Windows下Apache服务多个端口反向代理配置

阅读次数:275 次  来源:admin  发布时间:

修改\Apache24\conf\httpd.conf:

1、修改安装包地址:

Define SRVROOT "/Apache24"

修改为:

Define SRVROOT "D:\httpd-2.4.52-o111m-x86-vc15\Apache24"

2、修改监听端口:

Listen 80

修改为:

Listen 81
Listen 82
Listen 83

3、打开相关模块配置(去掉注释):

(1)#LoadModule access_compat_module modules/mod_access_compat.so
(2)#LoadModule filter_module modules/mod_filter.so
(3)#LoadModule headers_module modules/mod_headers.so

(4)#LoadModule proxy_module modules/mod_proxy.so                     -- 常见配置(基础反向代理1)
(5)#LoadModule proxy_connect_module modules/mod_proxy_connect.so     -- 常见配置
(6)#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so             -- 常见配置
(7)#LoadModule proxy_http_module modules/mod_proxy_http.so           -- 常见配置(基础反向代理1)

(8)#LoadModule reqtimeout_module modules/mod_reqtimeout.so

打开(4)、(7)两个模块即可配置单端口反向代理设置;

(1)~(8)8个模块全部打开时,用来配置多端口反向代理设置:

LoadModule access_compat_module modules/mod_access_compat.so
LoadModule filter_module modules/mod_filter.so
LoadModule headers_module modules/mod_headers.so
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
LoadModule reqtimeout_module modules/mod_reqtimeout.so

4、注释ServerName:

ServerName localhost:80

注释后为:

#ServerName localhost:80

5、修改“htdocs”地址:

DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">

修改为:

DocumentRoot "D:\httpd-2.4.52-o111m-x86-vc15\Apache24\htdocs"
<Directory "D:\httpd-2.4.52-o111m-x86-vc15\Apache24\htdocs">

6、修改“cgi-bin”地址:

ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"

修改为:

ScriptAlias /cgi-bin/ "D:\httpd-2.4.52-o111m-x86-vc15\Apache24\cgi-bin\"

7、最后尾部新增添加代理配置信息

<VirtualHost *:81>
#ProxyPreserveHost On     #ProxyPreserveHost On 。 默认情况下它的值为Off,没有仔细研究这个参数背后的深层含意,大概意思就是反向代理转发所有主机
ProxyRequests off         #反向代理
#
#ServerName 127.0.0.1
#ServerAlias 127.0.0.1
#
#<Proxy *>
#Order Deny,Allow    # 用来控制目录和文件的访问授权。
#Deny from all       # 禁止
#Allow from all      # 允许
#</Proxy>
#
ProxyPass / http://www.baidu.com/               #http://www.baidu.com/(百度实际地址:https://www.baidu.com/)
ProxyPassReverse / http://www.baidu.com/
</VirtualHost>


<VirtualHost *:82>
ProxyRequests off            #反向代理
ProxyPass / http://www.processon.com/
ProxyPassReverse / http://www.processon.com/
</VirtualHost>


<VirtualHost *:83>
ProxyRequests on             #正向代理
ProxyPass / http://www.baidu.com/
ProxyPassReverse / http://www.baidu.com/
</VirtualHost>

注:使用此配置可以同时设置多端口正向代理和方向代理。

8、httpd.conf文件配置完成后,重启Apache服务即可

(1)Windows版本启动/停止方式:

启动:

进入D:\httpd-2.4.52-o111m-x86-vc15\Apache24\bin\中,双击httpd.exe,保持弹窗不闪退即可进行测试。

Windows下Apache服务多个端口反向代理配置

停止:
关闭程序窗口即可。

(2)Linux版本启动/停止方式:

命令 ps -ef|grep httpd 可查看Apache安装路径:

apahce安装目录为/usr/local/apache2

Apahce启动命令:

/usr/local/apache2/bin/apachectl start

Apache停止命令:

/usr/local/apache2/bin/apachectl sto

Apache重新启动命令:

/usr/local/apache2/bin/apachectl restart

要在重启 Apache 服务器时不中断当前的连接,则应运行:

/usr/local/sbin/apachectl graceful

如果apache安装成为linux的服务的话,可以用以下命令操作:

启动: service httpd start

重新启动: service httpd restart

停止服务: service httpd sto

上一篇:Enable.Net4.5inIISonWindows8.1
下一篇:我使用的DEBIAN5.0.2TESTING源列表