为了测试目的,我尝试使用 squid 模拟本地 Windows 机器上的某些东西。
我需要允许本地应用程序和浏览器连接到在 localhost 上运行的 tomcat 服务器,我在 hosts 文件中将其别名为testServer
。所有内容都需要能够通过 https 连接,但不能通过 http 连接,并且所有连接都来自并停留在我的本地计算机上。
举例来说,我想允许https://testServer:8443/keepAlive
,但不允许http://testServer:8080/keepAlive
。
我可以让 squid 允许或阻止 http 连接,但无法让它允许 https。我尝试了很多类似这样的方法:
#https_port 8443 cert=c:/squid/tomcat_cert.pem defaultsite=testServer
acl sites_server_1 dstdomain testServer
http_access allow sites_server_1
http_access allow SSL_ports
http_access deny !SSL_ports
acl SSL_ports port 443
acl SSL_ports port 8443 #Tomcat ssl
我也考虑过使用 apache 和 mod proxy 来做这件事,但看起来并不直接。但如果有更适合这个的工具,那也是一个很好的答案。这似乎应该很简单,但任何帮助都会很感激。
编辑:刚刚意识到这里的端口存在问题,我需要更改我的应用程序指向的端口,这样我就不会让代理和 tomcat 尝试在同一台机器上监听同一个端口,所以我还需要配置 squid 来重定向该端口。