行业资讯

基于Apache httpd为windows11搭建代理服务器

发布时间:2026/8/8 21:51:41
基于Apache httpd为windows11搭建代理服务器 文章目录一.概述二.检查电脑系统类型三.下载安装Apache Httpd四.代理服务配置五.代理服务安装六.报错解决方法七.测试是否运行成功7.1 本机测试7.2 局域网代理测试八.设置特定ip可访问阻止其他ip访问九.参考文档一.概述出于某些原因我们需要将自己的windows电脑作为网络代理为局域网内的其他设备做流量代理那么windows电脑上的一些魔法功能就可以赋能给局域网内其他设备使用类似于软路由网关选择将windows作为代理服务器需要在windows主机上安装代理服务通常有一些软件客户端如CCproxy或者Apache httpd本文介绍Apache httpd的方法。二.检查电脑系统类型检查电脑版本是为 32位操作系统 还是 64位操作系统检查方式如下1.在桌面找到【我的电脑】图标右键属性。三.下载安装Apache Httpd下载地址http://www.apachehaus.com/cgi-bin/download.plxApache Haus Downloads根据步骤1中电脑的系统位数选择对应编译好的二进制版本下载后得到httpd-2.4.25-x64-vc11-r1.zip解压。记住存放路径例如C:\AppInstall\Apache24注意如果选择下载的Apache httpd 与操作系统位数不一致可能会导致无法正常使用。四.代理服务配置进入安装的目录如 C:\AppInstall\Apache24目录结构如下这里需要对conf做一些修改以适配我们当前的配置首先进入conf目录打开httpd.conf文件修改处1进入conf目录打开httpd.conf文件进行修改根目录ServerRoot为自己放置Apache24的目录我的是C:\AppInstall\Apache24这里不修改启动会报错。修改处2Listen端口修改修改成自己要监听的端口和ipListen 8989修改处3ServerName修改为监听的端口我设置8989修改处4把以下四句前面的【#】去掉。HTTP 、FTP 、HTTPS sites#LoadModule proxy_module modules/mod_proxy.so#LoadModule proxy_connect_module modules/mod_proxy_connect.so#LoadModule proxy_http_module modules/mod_proxy_http.so#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so修改处5在最后添加Proxy配置ProxyRequests OnProxy *Order allow,deny Allow from all# Deny from 127.0.0.1# Deny from 10.10.10.0/24/Proxy【注意】2.2版本和2.4版本在配置上有差别五.代理服务安装winR 输入cmd 使用管理员权限打开dos窗口 运行以下命令安装cdC:\AppInstall\Apache24\bin httpd-kinstall进行安装apache,安装之后可以在 winR 输入services.msc进入服务中可以看到apache服务已经安装成功以下命令支持对apache的的启动操作cdC:\AppInstall\Apache24\bin 启动apache 输入: httpd-krestart 卸载apache 输入: httpd-kuninstall六.报错解决方法如果 Apache启动 报Invalid command ‘order’, perhaps misspelled or defined by a module not included。解决方法配置文件中httpd.conf中把mod_authz_host.so模块注释掉把LoadModule authz_host_module modules/mod_authz_host.so 注释取消掉七.测试是否运行成功7.1 本机测试使用浏览器验证代理是否可以访问浏览器配置代理以360浏览器为例选项-》代理服务器-》代理服务器设置-》手动配置代理输入的IP 可为127.0.0.1也可为局域网地址或专有网络外网地址端口为步骤3中监听的端口这里为8989。7.2 局域网代理测试设置火狐浏览器中的代理为192.168.2.130:8989如果能正常访问***则代理成功。设置系统设置中的代理为192.168.2.130:8989在shell中curl www.***.com返回结果则成功在shell中可使用命令设置仅在当前shell中生效exporthttp_proxyhttp://192.168.2.130:8989exporthttps_proxyhttp://192.168.2.130:8989将上面两句命令放在~/.bashrc和/etc/profile中可以分别在当前用户和整个系统中生效。注意科学在windows电脑中需开启TUN模式才能代理所有流量。八.设置特定ip可访问阻止其他ip访问参考链接Apache的Order Allow,Deny 详解 - 与时俱进 - 博客园 (cnblogs.com)在httpd.conf中修改最后的设置内容ProxyRequests OnProxy *Order Deny,Allow Allow from192.168.2.100192.168.2.200 Deny from all# Deny from 127.0.0.1# Deny from 10.10.10.0/24/Proxy注意“Deny,Allow”中间只有一个逗号也只能有一个逗号有空格都会出错单词的大小写不限。上面设定的含义是先设定“先检查禁止设定没有禁止的全部允许”而第二句没有Deny也就是没有禁止访问的设定直接就是允许所有访问了。这个主要是用来确保或者覆盖上级目录的设置开放所有内容的访问权。apache会按照order决定最后使用哪一条规则比如下面虽然第二句deny了所有访问但由于在order中allow是最后规则因此还需要看有没有allow规则于是allow的192.168.2.100和192.168.2.100就被允许了。注意order决定的“最后”规则非常重要。根据上面的规则在局域网内除了192.168.2.100和192.168.2.100两台机器其他的ip都别禁止访问代理访问了对于其他的机器执行curl www.***.com命令会报如下错误而对于允许的192.168.2.100和192.168.2.100两台机器执行curl www.***.com命令输出如下当然根据上面的规则你可以任意设置允许或禁止哪些设备通过配置起来非常简单至此完结撒花九.参考文档WINDOWS代理服务器搭建 - Apache httpdWindows10/11 搭建网络代理服务器Apache的Order Allow,Deny 详解