iOS APP配置HTTPS流程
1、准备工作申请一个 SSL 证书,可在沃通WoSign网站申请所需SSL证书类型。SSL证书按验证的类别可分:DV SSL证书(域名验证型):只验证域名所有权,适合个人网站、博客等站点使用;OV SSL证书(企业验证型):验证网站所属单位身份,适合企业级用户使用;EV SSL证书(扩展验证型):扩展验证网站所属单位身份,这种证书在浏览器中会显示醒目的绿色地址栏,可信度最高,适合需要用户高度信任的企业级用户使用。根据域名数量和域名类型选择对应的证书。
2、AFN配置HTTPS1.项目中的网络交互都是基于AFN,要求AFN版本在3.0及其以上;2.代码部分设置AFN请求管理者的时候添加httpsssl验证。//1.获得请求管理者AFHTTPSessionManager*manager=[AFHTTPSessionManagermanager];//2.加上这个函数,httpsssl验证。[managersetSecurityPolicy:[selfcustomSecurityPolicy]];//httpsssl验证函数-(AFSecurityPolicy*)customSecurityPolicy{//先导入证书NSString*cerPath=[[NSBundlemainBundle]pathForResource:@"xxx"ofType:@"cer"];//证书的路径NSData*cerData=[NSDatadataWithContentsOfFile:cerPath];//AFSSLPinningModeCertificate使用证书验证模式AFSecurityPolicy*securityPolicy=[AFSecurityPolicypolicyWithPinningMode:AFSSLPinningModeCertificate];//allowInvalidCertificates是否允许无效证书(也就是自建的证书),默认为NO //validatesDomainName是否需要验证域名,默认为YES;3.关于证书从沃通获取到HTTPS证书后,会得到一个有密码的压缩包文件,使用for other server里面的domain.crt的证书文件即可。
3、后台服务器配置HTTPS证书(鲍伊酷雪Ngnix)从沃通证书文件压缩包中,打开其中的for Nginx 文件可以看到 2 个文件,包括公钥、私钥。打开Nginx安装目玲膛宀耱录下conf目录中的nginx.conf文件找到 #HTTPS server ##server {# listen 443;# server_name localhost;# ssl on;# ssl_certificate cert.pem;# ssl_certificate_key cert.key;# ssl_session_timeout 5m;# ssl_protocols SSLv2 SSLv3 TLSv1;# ssl_ciphersALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;#ssl_prefer_server_ciphers on;# location / {# root html;# index index.html index.htm;# }#}将其修改为 :server {listen 443;server_name localhost;ssl on;ssl_certificatesslkey/public.cer; (证书公钥)ssl_certificate_keysslkey/private.key; (证书私钥)ssl_session_timeout 5m;ssl_protocols TLSv1 TLSv1.1TLSv1.2;ssl_ciphers ECDH:AESGCM:HIGH:!RC4:!DH:!MD5:!aNULL:!eNULL;ssl_prefer_server_ciphers on;location / {root html;index index.html index.htm;} }保存退出,并重启Nginx。