Apache httpd 代理服务器搭建

官方文档 http://httpd.apache.org/docs/2.4/

分为 docker环境搭建,Windows 环境搭建

==============================================================================================

docker环境搭建

1、拉取镜像 docker pull httpd

2、新建容器把apache2/conf 拷贝到宿主机

#把本地目录 ~/apache2/conf 挂载到容器的/data 目录下
sudo docker run -it -v ~/apache2/conf:/data httpd bash
#拷贝配置文件到宿主机挂载的目录中
root@b95a619ed735:/usr/local/apache2# cp -r conf/* /data/
#退出容器 然后这个容器就没有用了
root@b95a619ed735:/usr/local/apache2# exit

修改配置文件
第67行
Listen 80
改为需要使用的端口或 IP:port 形式

打开需要加载的模块

    LoadModule access_compat_module modules/mod_access_compat.so

    LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so

    LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so

    LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so

    LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.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_html_module modules/mod_proxy_html.so

    LoadModule proxy_http_module modules/mod_proxy_http.so

    LoadModule xml2enc_module modules/mod_xml2enc.so


开启代理,可以参考 
http://httpd.apache.org/docs/trunk/mod/mod_proxy.html
https://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require

访问无密码的配置需要加入这段
    ProxyRequests On
    <Proxy *>
       Require all granted
    </Proxy>

访问有密码的配置需要加入这段
    ProxyRequests On
    <Proxy *> 
        AuthType Basic
        AuthName "Restricted Resource"
        AuthBasicProvider file
        AuthUserFile "C:/Apache24/bin/.htpasswd"
        Require valid-user
    </Proxy>

有密码的情况需要生成配置文件 "C:/Apache24/bin/.htpasswd" 在C:/Apache24/bin目录下执行命令
    htpasswd -bc C:\Apache24\bin\.htpasswd admin 123456
用户名:admin
密码:123456


#新建容器,把配置文件挂载进去,把端口映射出来
sudo docker run -itd -v ~/apache2/conf:/usr/local/apache2/conf -p 8888:80 --name httpd httpd


docker httpd 代理服务器 这就搭建好了

====================================================================================

Windows x64 环境

需要安装环境依赖 Visual C++ 2017 x64

https://aka.ms/vs/15/release/VC_redist.x64.exe

一、下载Apache Haus

https://www.apachehaus.com/cgi-bin/download.plx

64位系统下载连接 https://www.apachehaus.com/cgi-bin/download.plx?dli=jZkRX50UNVTT6h2KSdkSzAlVOpkVFVFdSdkSNp1Z

解压后有个 readme_first.html 里面有安装方法

二、修改配置文件

但是这里需要先修改一下配置文件,里面没有说明

打开 Apache24/conf/httpd.conf

第39行
Define SRVROOT "/Apache24"
修改为Apache本地路径 官方建议放在磁盘根目录 所以我放在 c:\Apache24

第67行
Listen 80
改为需要使用的端口或 IP:port 形式

打开需要加载的模块

    LoadModule access_compat_module modules/mod_access_compat.so

    LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so

    LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so

    LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so

    LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.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_html_module modules/mod_proxy_html.so

    LoadModule proxy_http_module modules/mod_proxy_http.so

    LoadModule xml2enc_module modules/mod_xml2enc.so


开启代理,可以参考 
http://httpd.apache.org/docs/trunk/mod/mod_proxy.html
https://httpd.apache.org/docs/2.4/mod/mod_authz_core.html#require

访问无密码的配置需要加入这段
    ProxyRequests On
    <Proxy *>
       Require all granted
    </Proxy>

访问有密码的配置需要加入这段
    ProxyRequests On
    <Proxy *> 
        AuthType Basic
        AuthName "Restricted Resource"
        AuthBasicProvider file
        AuthUserFile "C:/Apache24/bin/.htpasswd"
        Require valid-user
    </Proxy>

有密码的情况需要生成配置文件 "C:/Apache24/bin/.htpasswd" 在C:/Apache24/bin目录下执行命令
    htpasswd -bc C:\Apache24\bin\.htpasswd admin 123456
用户名:admin
密码:123456

三、安装服务

管理员运行cmd

执行 httpd -k install

卸载 httpd -k uninstall

启动 httpd -k start

停止 httpd -k stop

重启 httpd -k restart

在手机上或电脑上开启代理:服务器IP:设置的端口

就可以使用代理了

猜你喜欢

转载自blog.csdn.net/wuchenlhy/article/details/103514675
今日推荐