在内部局域网(无外网)使用阿里云短信

        项目从阿里云迁移到政府外网,由于项目之前已使用阿里云短信通信,但是在政务云并无短信服务,若需继续使用阿里云短信,则需要做一些相关处理,其实很只需要做下代理即可, 应用服务器本身无法连接外网且外网无法连接到服务器,则添加代理机,通过代理机进行访问阿里云短信服务器,主要方式为:

修改阿里云短信服务API,增加代理设置:

本地代理机搭建:

一、简单http代理服务器搭建

  1. yum install squid
  2. vi /etc/squid/squid.conf

将http_access deny all 中deny 改为allow,http_port后面的是端口号,默认为3128。可改可不改。
       3. service squid restart
       4. 如果有防火墙, iptables -I INPUT -p tcp --dport 3128 -j ACCEPT

  • 代码修改,两种方式:
  1. 调用短信API前,设置系统属性;

在调用短信程序之前增加代理配置。

System.setProperty("http.proxySet", "true");

System.setProperty("http.proxyHost", "192.168.2.XXX");

System.setProperty("http.proxyPort", "" + 3128);

       2、修改源码

找到阿里云短信SDK中的HttpRequest类,其中有一个的方法为:getHttpConnection,再其中添加:

if (httpConn == null) {

            Proxy proxy = new Proxy(Proxy.Type.HTTP, new           InetSocketAddress("192.168.2.XXX", Integer.parseInt("3128")));

            httpConn = (HttpURLConnection)url.openConnection(proxy);

}

使用路由器设置可关闭外网进行验证:

https://jingyan.baidu.com/article/49711c61a81fd2fa451b7c4f.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhouhaitao_cherry

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值