加入收藏 | 设为首页 | 会员中心 | 我要投稿 厦门网 (https://www.xiamenwang.cn/)- 数据采集、建站、AI开发硬件、专属主机、云硬盘!
当前位置: 首页 > 教程 > 正文

微信H5活动文案链接域名防封及跳转系统详情

发布时间:2023-11-02 10:51:06 所属栏目:教程 来源:互联网
导读:   一直以来,我们都被新奇劲爆的H5不断冲击大脑,大脑一次又一次被刺激着,好的H5活动文案在微信中和朋友圈火了一把,看过之后却让我们久久不能忘怀,我们下意识引发了情感共鸣!那么问题
  一直以来,我们都被新奇劲爆的H5不断冲击大脑,大脑一次又一次被刺激着,好的H5活动文案在微信中和朋友圈火了一把,看过之后却让我们久久不能忘怀,我们下意识引发了情感共鸣!那么问题来了,这个H5活动文案精心策划出来后,分享次数过多或者是被同行举报之后,全部被归零————被微信封杀了!那么该如何来对H5活动文案链接域名来做防封呢?
 
  微信H5活动文案链接域名防封及跳转系统详解
 
  像这类场景,都是以文字 图片加二维码的形式展现在大众的眼前,那我们就从这几方面来着手。
 
  这里重点需要说的是图片!!这个得有个度,很多大佬为了能引起眼求,用了过于暴露和过于性感的图片,这样容易被微信判定为H色,进而容易引起被封。
 
  还有,二维码识别,很多防封都不能兼容苹果二维码的识别,不能做到长按来识别,而是需要保存二维码到相岫,再用扫一扫进行识别,这样繁琐的步骤,别说没有一点优势,还引起用户的反感,从而进行投诉,只要投诉次数一多,也是容易引起被封的。
 
  那有人就会有疑问,我从各方面都有注意到,那为什么还是被微信封杀呢?那我这里跟你说,被封的因素太多了,其中可以去百度搜搜微信相关规则,所谓是防不胜防,我们要做的就是做好防封,将我们的损失降到最小,将推广做到利益最大化,那怎么来做防封呢?下面介绍几种跳转系统供大家参考:
 
  1、现在很多朋友接触的防封策略都是用落地域名作为肉盾,一个入口配上多个落地域名,让落地域名进行轮换,假如落地A被封了,立马更换落地域名B,这里可以手动换,也可以写程序实现自动换,但是这种很费域名,尤其是带点敏感或者是灰色产业,那一天不准备百把个域名是做不下来的,完全就是用域名来推的,而且域名一天一个价,有的时候就是天价,很多老板直呼推不起。这种方式对于某些行业是解决不了根本的。
 
  2、还有一种就是做跳转,细细分析,封只是说在微信环境中被封杀,假如说是自动跳转到手机外部浏览器是不是就可以解决这一问题了,但是这个也是有一定的限制,假如必须在微信环境中去实施后面部分的话,这个就没那么合适,而且目前为止,只能实现安卓自动跳转,由于苹果端 做了限制,还是需要手动去引导一步。
 
  3、多级加密跳转防封,通过生成防封短链接,有效保护原始链接不被发现,应该说是目前最有技术含量的防封了,各种场景都适用,尤其QP,BC等,效果杠杠的。
 
  完结,以上策略希望对大家有帮助,期待新的发现~有需要可以联系我,
 
  最后分享代码供技术朋友参考下:
 
  import java.io.BufferedReader;
 
  import java.io.DataOutputStream;
 
  import java.io.IOException;
 
  import java.io.InputStream;
 
  import java.io.InputStreamReader;
 
  import java.io.UnsupportedEncodingException;
 
  import java.net.HttpURLConnection;
 
  import java.net.URL;
 
  import java.net.URLEncoder;
 
  import java.util.HashMap;
 
  import java.util.Map;
 
  import net.sf.json.JSONObject;
 
  public class Demo {
 
    public static final String DEF_CHATSET = "UTF-8";
 
    public static final int DEF_CONN_TIMEOUT = 30000;
 
    public static final int DEF_READ_TIMEOUT = 30000;
 
    public static String userAgent =  "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";
 
    public static void mobileQuery(){
 
        String result =null;
 
        String url ="http://api.monkeyapi.com";//请求接口地址
 
        Map params = new HashMap();//请求参数
 
          params.put("appkey" , "appkey");//您申请的APPKEY
 
          params.put("url" , "www.monkeyapi.com");//需要查询的网站
 
        try {
 
            result = net(url, params, "GET");
 
            JSONObject object = JSONObject.fromObject(result);
 
            if(object.getInt("error_code")==0){
 
              System.out.println(object.get("result"));
 
            }else{
 
              System.out.println(object.get("error_code")+":"+object.get("reason"));
 
            }
 
        } catch (Exception e) {
 
          e.printStackTrace();
 
        }
 
    }
 
    public static void main(String[] args) {
 
    }
 
    /**
 
     *
 
     * @param  strUrl 请求地址
 
     * @param  params 请求参数
 
     * @param  method 请求方法
 
     * @return    网络请求字符串
 
     * @throws  Exception
 
     */
 
    public static String net(String strUrl, Map params,String method) throws Exception {
 
       HttpURLConnection conn = null;
 
       BufferedReader reader = null;
 
       String rs = null;
 
       try {
 
          StringBuffer sb = new StringBuffer();
 
          if(method==null || method.equals("GET")){
 
            strUrl = strUrl+"?"+urlencode(params);
 
          }
 
          URL url = new URL(strUrl);
 
          conn = (HttpURLConnection) url.openConnection();
 
          if(method==null || method.equals("GET")){
 
             conn.setRequestMethod("GET");
 
          }else{
 
             conn.setRequestMethod("POST");
 
             conn.setDoOutput(true);
 
          }
 
          conn.setRequestProperty("User-agent", userAgent);
 
          conn.setUseCaches(false);
 
          conn.setConnectTimeout(DEF_CONN_TIMEOUT);
 
          conn.setReadTimeout(DEF_READ_TIMEOUT);
 
          conn.setInstanceFollowRedirects(false);
 
          conn.connect();
 
          if (params!= null && method.equals("POST")) {
 
             try {
 
                DataOutputStream out = new DataOutputStream(conn.getOutputStream());
 
                out.writeBytes(urlencode(params));
 
             } catch (Exception e) {
 
                // TODO: handle exception
 
                e.printStackTrace();
 
             }
 
          }
 
         InputStream is = conn.getInputStream();
 
         reader = new BufferedReader(new InputStreamReader(is, DEF_CHATSET));
 
         String strRead = null;
 
         while ((strRead = reader.readLine()) != null) {
 
           sb.append(strRead);
 
         }
 
         rs = sb.toString();
 
       } catch (IOException e) {
 
         e.printStackTrace();
 
       } finally {
 
         if (reader != null) {
 
            reader.close();
 
         }
 
         if (conn != null) {
 
            conn.disconnect();
 
         }
 
       }
 
      return rs;
 
    }
 
    //将map型转为请求参数型
 
    public static String urlencode(Map<String,String> data) {
 
         StringBuilder sb = new StringBuilder();
 
         for (Map.Entry i : data.entrySet()) {
 
             try {
 
                sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");
 
             } catch (UnsupportedEncodingException e) {
 
                e.printStackTrace();
 
             }
 
         }
 
         return sb.toString();
 
    }
 
  }
 

(编辑:厦门网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章