1 背景
Spring Cloud微服务架构:有很多个服务
服务暴露到公网:使用Apache httpd实现反向代理
暴露到公网存在的问题:一些接口存在安全漏洞,在安全漏洞未解决前需要停用该接口,但其它服务及接口依然保持正常运行。
目标:对特定接口进行禁用,使得调用方无法访问。
2 解决
假设目前Apache httpd配置如下:
<VirtualHost *:39999>
ServerName localhost:39999
ProxyPass /drug-api http://localhost:5800/standard-api
ProxyPassReverse /drug-api http://localhost:5800/standard-api
</VirtualHost>
添加如下配置使得禁用接口及特定HTTP方法:
<VirtualHost *:39999>
ServerName localhost:39999
ProxyPass /drug-api http://localhost:5800/standard-api
ProxyPassReverse /drug-api http://local