基于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.plx(Apache 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),这里不修改启动会报错。
在这里插入图片描述

修改处2:Listen端口修改(修改成自己要监听的端口和ip)

Listen 8989

在这里插入图片描述
修改处3:ServerName修改为监听的端口(我设置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   On
<Proxy *>
    Order allow,deny
    Allow from all
# Deny from 127.0.0.1
# Deny from 10.10.10.0/24
</Proxy>

【注意】2.2版本和2.4+版本在配置上有差别

五.代理服务安装

win+R 输入cmd 使用管理员权限打开dos窗口 运行以下命令安装:

cd C:\AppInstall\Apache24\bin
httpd -k install

进行安装apache,安装之后可以在 win+R 输入 services.msc进入服务中可以看到apache服务已经安装成功:

在这里插入图片描述
以下命令支持对apache的的启动操作:

cd C:\AppInstall\Apache24\bin

启动apache 输入:
   httpd -k restart
卸载apache 输入:
   httpd -k uninstall

在这里插入图片描述

六.报错解决方法

  如果 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中生效):
export http_proxy=http://192.168.2.130:8989
export https_proxy=https://192.168.2.130:8989

将上面两句命令放在~/.bashrc/etc/profile中,可以分别在当前用户和整个系统中生效。
注意:科学在windows电脑中需开启TUN模式,才能代理所有流量。

八.设置特定ip可访问(阻止其他ip访问)

参考链接:Apache的Order Allow,Deny 详解 - 与时俱进 - 博客园 (cnblogs.com)

httpd.conf中修改最后的设置内容:

ProxyRequests   On
<Proxy *>
    Order Deny,Allow
    Allow from 192.168.2.100 192.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 httpd
  • Windows10/11 搭建网络代理服务器
  • Apache的Order Allow,Deny 详解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/354452.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

32个Java面试必考点-08高并发架构基石-缓存

本课时介绍缓存相关的知识点以及 Memcache 和 Redis 这两个最常使用的缓存。重点学习以下三个方面的内容&#xff1a; 1.使用缓存时常遇到的典型问题&#xff1b; 2.Memcache 的内存结构&#xff1b; 3.Redis 相关的知识点以及 Redis 常用结构的实现。 缓存知识点 类型 缓…

大数据数据流分析和处理的工具pig,从入门到精通!

介绍&#xff1a;Pig是一种数据流语言和运行环境&#xff0c;用于处理和分析大数据。 Pig由两个主要部分构成&#xff1a; Pig Latin语言&#xff1a;这是一种用于描述数据流的高级语言&#xff0c;它允许用户以较为简洁的方式编写数据处理和转换任务。 Pig执行环境&#xff1a…

STM32 自学笔记 学习笔记 一

起源&#xff0c;A7,A9,M3&#xff0c;原来弄了A9的TQ2440&#xff0c;结果还得来重新熟悉下32函数JLINK使用SW方式&#xff0c;本来可以下载&#xff0c;但是一根线掉了重新上去&#xff0c;就出各种跟线无关问题&#xff0c;干脆把32断了重新接&#xff0c;结果就成功了&…

记录浏览器能打开github.com,android studio无法拉取github项目,并且ping github.com也拼不通的问题

问题&#xff1a; Android studio编译flutter工程突然碰上如下问题&#xff1a; 在浏览器打开该地址能正常打开&#xff0c;尝试ping&#xff1a; 解决方式 通过搜索&#xff0c;查到如下办法&#xff1a; 1、首先在ipaddress.com中查询github.com域名的固定ip地址&#xff…

vue常用指令(v-mode)

一、v-mode 指令 作用: 获取和设置表单元素的值(实现双向数据绑定) 双向数据绑定 单向绑定: 就是把Model绑定到View&#xff0c;当我们用JavaScript代码更新Model时&#xff0c;View就会自动更新。双向绑定: 用户更新了View&#xff0c;Model的数据也自动被更新了&#xff0c;…

Unity 命令模式(实例详解)

文章目录 示例1&#xff1a;基础命令类结构示例2&#xff1a;旋转对象命令示例3&#xff1a;增加道具命令示例4&#xff1a;切换场景命令示例5&#xff1a;播放音效命令 在Unity中使用命令模式&#xff08;Command Pattern&#xff09;是一种常见的设计模式&#xff0c;用于实现…

【C深度解剖】计算机数据删除与return关键字

简介&#xff1a;本系列博客为C深度解剖系列内容&#xff0c;以某个点为中心进行相关详细拓展 适宜人群&#xff1a;已大体了解C语法同学 作者留言&#xff1a;本博客相关内容如需转载请注明出处&#xff0c;本人学疏才浅&#xff0c;难免存在些许错误&#xff0c;望留言指正 作…

sql注入的学习

1.首先我们应该确定sql注入的类型 利用id1 and 11 和id1 and 12 判断是数字类型注入还是字符型注入&#xff0c;如果两者都可以正常显示界面&#xff0c;则为字符型注入&#xff0c;否则是数字型 两个都正常显示&#xff0c;所以为字符型注入&#xff08;也可以使用id2-1&…

漏洞原理反射型XSS漏洞

漏洞原理XSS漏洞 1 反射型XSS php基础链接 Web渗透编程语言基础-CSDN博客 正常思维 http://127.0.0.1/websec/day01/xss_reflect.php?name%E6%88%91%E6%98%AF%E8%B0%81 http://127.0.0.1/14_WEBSEC/DAY01/xss_reflect.php?name我是谁 黑客思维 http://127.0.0.1/websec…

【数据结构1-2】二叉树

树形结构不仅能表示数据间的指向关系&#xff0c;还能表示出数据的层次关系&#xff0c;而有很明显的递归性质。因此&#xff0c;我们可以利用树的性质解决更多种类的问题。 但是在平常的使用中&#xff0c;我们并不需要使用这么复杂的结构&#xff0c;只需要建立一个包含int r…

OpenHarmony—不支持解构赋值

规则&#xff1a;arkts-no-destruct-assignment 级别&#xff1a;错误 ArkTS不支持解构赋值。可使用其他替代方法&#xff0c;例如&#xff0c;使用临时变量。 TypeScript let [one, two] [1, 2]; // 此处需要分号 [one, two] [two, one];let head, tail [head, ...tail]…

web前端项目-五子棋【附源码】

五子棋&#xff08;人机对弈&#xff09; 本项目【五子棋】是一款人机对弈的策略型棋类游戏。可以选择落子方&#xff1b;游戏难度和是否显示落子次序。游戏双方分别使用黑白两色的棋子&#xff0c;在棋盘直线与横线的交叉点上进行对弈。五子棋可以促进大脑发育、提高思维能力…

时序分析中的去趋势化方法

时序分析中的去趋势化方法 时序分析是研究随时间变化的数据模式的一门学科。在时序数据中&#xff0c;趋势是一种随着时间推移而呈现的长期变化趋势&#xff0c;去趋势化是为了消除或减弱这种趋势&#xff0c;使数据更具平稳性。本文将简单介绍时序分析中常用的去趋势化方法&a…

我爱这夜色茫茫

夜来香 - 李香兰 那南风吹来清凉 那夜莺啼声细唱月下的花儿都入梦 只有那夜来香 吐露着芬芳 我爱这夜色茫茫 也爱这夜莺歌唱 更爱那花一般的梦 拥抱着夜来香 吻着夜来香夜来香我为你歌唱 夜来香我为你思量 啊~啊我为你歌唱 我为你思量 我爱这夜色茫茫 也爱这夜莺歌唱更爱那花…

GitHub Action 实现超简单的持续集成(CI)

GitHub Action 官方文档 GitHub Action 中使用 Docker 的官方文档 所用项目代码获取&#xff1a;公众号发送cloud 前言 在上一篇几分钟完成前后端分离项目部署文章中&#xff0c;我们完成了前后端分离项目的部署&#xff0c;但随着开发的进行&#xff0c;我们每次更新都手动打包…

IT网课满天飞,花两万学这个课真的有用吗?

我一直都觉得&#xff0c;IT类付费课程&#xff0c;无用且没有必要&#xff0c;我写代码10多年&#xff0c;没有花过一分钱报班学什么java, 学什么就业课&#xff0c;完全不妨碍我现在年薪百万。报班没有意义的地方在于&#xff0c;它会给你的大脑灌输一些你消化不了的知识&…

数据湖技术之应用场景篇

数据湖技术有较多的应用场景&#xff0c;本篇文章是针对一些典型的痛点场景做了一些介绍和说明。比如说在线数据抽取场景原有模式对线上库表产生较大压力&#xff0c;flink多流join维护的大状态导致的稳定性问题等等&#xff0c;具体场景如下图所示&#xff1a; 场景1:在线数据…

贪吃蛇/链表实现(C/C++)

本篇使用C语言实现贪吃蛇小游戏&#xff0c;我们将其分为了三个大部分&#xff0c;第一个部分游戏开始GameStart&#xff0c;游戏运行GameRun&#xff0c;以及游戏结束GameRun。对于整体游戏主要思想是基于链表实现&#xff0c;但若仅仅只有C语言的知识还不够&#xff0c;我们还…

2024/1/27 备战蓝桥杯 1-1

目录 求和 0求和 - 蓝桥云课 (lanqiao.cn) 成绩分析 0成绩分析 - 蓝桥云课 (lanqiao.cn) 合法日期 0合法日期 - 蓝桥云课 (lanqiao.cn) 时间加法 0时间加法 - 蓝桥云课 (lanqiao.cn) 扫雷 0扫雷 - 蓝桥云课 (lanqiao.cn) 大写 0大写 - 蓝桥云课 (lanqiao.cn) 标题…

WordPress如何使用SQL实现一键关闭/开启评论功能(已有评论)

WordPress本人就自带评论功能&#xff0c;不过由于种种原因&#xff0c;有些站长不想开启评论功能&#xff0c;那么应该怎么实现一键关闭评论功能或开启评论功能呢&#xff1f;或者针对已有评论功能的文章进行一键关闭或开启评论功能应该怎么操作&#xff1f; 如果你使用的Wor…