苹果审核ipv6海外解决思路-About APP Store
原始简书文章地址(也是我自己的)
首先声明,一我不负责涉及你们内部服务器. 二是好好读文章,别人能过,你们也能过
苹果6月1日出的IPV6协议阻碍了国内大多数积极开发者,我司也不外乎,经过三次被拒后,遂在网上查找关于IPV6审核的相关事宜,怪我年少无知以为这种开源协议的东西应该是免费的,当然,我说的免费是想着看几篇成熟的IPV6审核文章然后自己实践,奈何几乎所有关于苹果IPV6审核的文章到最后不是推荐买教育网转发要不就是直接把钱交给个人然后让第三方来协助通过.
我实在无法想象一个仅仅靠着linux服务器外加nginx转发就能赚大钱的畸形小社会是怎样形成的,linux市值多少钱恐怕无人能说出.
所有文章内说的苹果IPV6和后台服务器没关系是错误的,至少在请求转发层面是错误的.苹果使用IPV6-ONLY网络进行APP测试,如果服务器端支持IPV6的话则可以直接请求IPV6所对应的服务器进而使用nginx转发至相应的API接口.如果没有IPV6地址的话则直接通过NAT64转化为相应的IPV4进行请求相应API. 请注意这里的重点是这个IPV6,,服务器不能单单支持IPV6即可,所谓的支持不能仅仅是打开linux服务器内相应被封印的IPV6相关设置然后加一个HE隧道(当然这么着也有通过的,但是HE也是基于IPV4,最好还是不要走这条道)而是寻找一台真正有全球IPV6地址的服务器,这才是关键中的关键.至于其他文章所推崇的教育网转发,一是价格太贵,二是转发这事情由他人掌控多少有点看不起自己公司后端的意思(毕竟大多数不从事后端的人的想法就是感觉后端有毛事可干,喝喝喝)..
经过第四次的痛苦实践,现将解决方案贴于文章下.希望能帮助广大开发者早日审核通过.
一、购买一台海外服务器,本人使用的是banwagong,直通车:
[https://bwh88.net/aff.php?aff=10004 )
近些天有朋友反映banwagong部分ip被墙,所以如果想要过的可能性大一点可以直接选择阿里的海外版.
#####现在区分openVz和KVM,OPENVZ支持IPV6
#####到达购买页面之后买一台差不多配置的服务器即可.洛杉矶或者弗罗里达的都行.
购买之后:
点击

获取全球唯一的IPV6,此IPV6为真实IPV6

二、海外服务器端安装nginx然后配置好转发至国内自己APP及API使用的服务器端口.
普通http
server{
listen 你的海外服务器IPV4地址:80;
listen 你的海外服务器IPV6地址 :80;
server_name 你的域名;
location /{
proxy_pass http://你的国内服务器IPV4地址:端口/;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
https
server{
listen 你的海外服务器IPV4地址:80;
listen 你的海外服务器IPV6地址 :80;
listen 你的海外服务器IPV4地址:443 ssl;
listen 你的海外服务器IPV6地址:443 ssl;
server_name 你的域名;
ssl_certificate /usr/develop/nginx/sslkey/XX.crt; #(证书公钥)
ssl_certificate_key /usr/develop/nginx/sslkey/XX.key; #(证书私钥)
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
add_header Content-Security-Policy upgrade-insecure-requests;
if ( $scheme = http ) {
rewrite ^/(.*) https://$server_name/ permanent;
}
location / {
proxy_pass http://你的国内服务器IPV4地址:端口/;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
三、以万网为例,修改域名解析至海外服务器,我直接把IPV4和IPV6都指向了海外,后来想想直接把IPV6指向海外服务器即可,IPV4不用变,这样可以在保证APP正常使用的情况下通过审核(不过还木有测试)
最后,对于你们那些利用信息不对称收钱的不要误会,我不是针对谁,我是说收钱的各位都是垃圾。


对了,我不是前端,因为苹果说的只需要前端API层面支持而不需要后端服务器支持的狗屁话让我们前三次的审核浪费了大量时间,原先我一直没有改动后端后来在广大收钱者的感召下开始进行后端大改造.祝各位早日通过审核.
致敬李纳斯:
“Software is like sex: it"s better when it"s free.” 软件就像性,免费的比花钱的好得多. --Linus Torvalds
流程图: 
如果您renwei我的文章对于您苹果审核做出了贡献,多谢支持,金额随意.不强制.
还有就是强调一下,这种知识确实不值几个钱,但是亲自动手操刀还是需要TIME的.都是混口饭吃,给点饭钱不多.

苹果审核ipv6海外解决思路-About APP Store的更多相关文章
- 解决上传app store卡在正在通过iTunes Store鉴定
打开终端输入代码即可 cd ~ mv .itmstransporter/ .old_itmstransporter/ "/Applications/Xcode.app/Contents/Ap ...
- 苹果App Store审核指南中文翻译(2014.9.1更新)
转:http://www.cocoachina.com/appstore/20140901/9500.html CocoaChina对<苹果应用商店审核指南>中文翻译最近一次更新时间为20 ...
- App Store审核指南中文版(2014.10.11更新)
App Store审核指南中文版(2014.10.11更新) 2014-10-11 16:36 编辑: suiling 分类:AppStore研究 来源:CocoaChina 2 8657 App ...
- 最新App Store审核10大被拒理由
最近,苹果在官网给出了截至2015年2月份应用被拒绝的十大理由,其中50%以上的应用被拒绝都是因为这10个原因,其中7个理由和2014年相同,其中排名前三的原因分别是:需要补充更多信息.存在明显的bu ...
- 最新App Store审核指南与10大被拒理由
最近,苹果在官网给出了截至2015年2月份应用被拒绝的十大理由,其中50%以上的应用被拒绝都是因为这10个原因,其中7个理由和2014年相同,其中排名前三的原因分别是:需要补充更多信息.存在明显的bu ...
- App Store 加急审核解析
什么是加急审核 首先,提交二进制文件到 App Store,是要交给 App Store Review 团队去审核的.下面这句话是我从他们那边拿到的官方数据: On average, 50 perce ...
- XCODE6 提交至 App Store
新到一个公司,以前的苹果开发人员离职,临时接手他的苹果代码,需要修改并上线到APP STORE. xcode6.0升级到最新的6.1后, 发现各种坑 1. 路径配置不对, 这个是个人习惯问题,之前的 ...
- [App Store Connect帮助]六、测试 Beta 版本(1)TestFlight Beta 版测试概述(iOS、Apple TVOS、watchOS)
TestFlight Beta 版测试让您可以分发您 App 的 Beta 版构建版本给测试员并收集反馈.您可以在您的 App Store Connect 帐户中一次为至多 100 个 App 启用 ...
- 配置阿里云ECS支持IPv6,解决苹果app审核失败问题
前几天iOS的App提交给苹果审核没通过,给出的原因是:该应用在 IPv6 的环境下无法使用.检查发现:阿里云优化过的系统没有启用IPv6协议,需要配置启用一下,但是只单独启用IPv6也是无法直接提供 ...
随机推荐
- 深入了解opacity和rgba
1. rgba 首先它是一个属性值,语法为rgba(r,g,b,a) - r为红色值, 正整数 | 百分数 - g为绿色值,正整数 | 百分数 - b为蓝色值,正整数 | 百分数 - a为alpha( ...
- Spring 注册BeanPostProcessor 源码阅读
回顾上一篇博客中,在AbstractApplicationContext这个抽象类中,Spring使用invokeBeanFactoryPostProcessors(beanFactory);执行Be ...
- C语言-查找一个元素在数组中的位置
#include<stdio.h> #include <stdlib.h> #include <time.h> int search(int key, int a[ ...
- .net core 3.0 WPF中使用FolderBrowserDialog
前言 随着.net core 3.0 的发布,WPF 也可以在 core 平台上使用了.当前的 WPF 不支持跨平台,仅能够在 Windows 平台上使用.如果想体验 WPF 跨平台开发,可以访问开源 ...
- Kubernetes快速入门
二.Kubernetes快速入门 (1)Kubernetes集群的部署方法及部署要点 (2)部署Kubernetes分布式集群 (3)kubectl使用基础 1.简介 kubectl就是API ser ...
- Neo4j:图数据库GraphDB(四)Python中的操作
本文总结下Python中如何操作Neo4j数据库,用到py2neo包,Pip install 一下. 1 连接neo4j数据库:跟其它数据库一样,操作前必须输入用户名和密码及地址连接一下. from ...
- PHP array_unshift
1.函数的作用:在数组的开头插入一个或者多个元素 2.函数的参数: @params array &$array @params mixed $value1 @params mixed ...
- HTTP Catcher
HTTP Catcher HTTP Catcher 是一个 Web 调试工具.它可以拦截.查看.修改和重放来自 iOS 系统的 HTTP 请求. 你不需要连接电脑,HTTP Catcher 可以在后台 ...
- PHP 类中使用全局变量和全局常量
<?php $global_var = "var"; define('global_const', 'const'); class Test { public $_var; ...
- Apache Solr Velocity模板注入RCE漏洞复现
Apache Solr Velocity模板注入RCE漏洞复现 一.Apache Solr介绍 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于web-service的API接口,用户可以通 ...
