Acabo de instalar MAMP 3.4 en Yosemite, pero la versión de Apache interna sigue siendo 2.2. ¿Hay alguna forma de actualizar a Apache 2.4? Además, lo instalé a través de brew openssl 1.0.2 pero MAMP Apache aún comienza con la versión OpenSSL/0.9.8zg. ¿Por qué? Necesito estas actualizaciones para cumplir con los nuevos requisitos de ATS iOS 9.
A partir del 21 de julio de 2016, hay una versión preliminar disponible de MAMP PRO 4 que incluye OpenSSL 1.0.2, obtenga la versión preliminar aquí:
cree un certificado autofirmado con sha256 (según lo solicitado por iOS 9) con
openssl req -x509 -nodes -sha256 -days 365 -newkey rsa:2048 -keyout server.key -out server.crt
y guardar server.key
y server.crt
entrar/Applications/AMPPS/apache/conf
/Applications/AMPPS/apache/conf/extra/httpd-ssl.conf
agregando:<VirtualHost localhost:443>
DocumentRoot "/Applications/AMPPS/www"
ServerName localhost
SSLEngine on
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCertificateFile "/Applications/AMPPS/apache/conf/server.crt"
SSLCertificateKeyFile "/Applications/AMPPS/apache/conf/server.key"
</VirtualHost>
adentro
<IfModule ssl_module> ... </IfModule>
class LoginService: NSObject, NSURLSessionDelegate {
func URLSession(session: NSURLSession,
task: NSURLSessionTask,
didReceiveChallenge challenge: NSURLAuthenticationChallenge,
completionHandler: (NSURLSessionAuthChallengeDisposition, NSURLCredential?)
-> Void) {
completionHandler(NSURLSessionAuthChallengeDisposition.UseCredential, NSURLCredential(forTrust: challenge.protectionSpace.serverTrust!))
}
...
func requestLoginWithURL (requestURL: NSURL, completionHandler: (success: Bool?) -> Void) {
let configuration =
NSURLSessionConfiguration.defaultSessionConfiguration()
let urlRequest: NSURLRequest = NSURLRequest(URL: requestURL)
let session = NSURLSession(configuration: configuration, delegate: self, delegateQueue:NSOperationQueue.mainQueue())
/*
dataTaskWithRequest: creates an HTTP request for the specified URL request object, and calls a handler upon completion.
*/
let task = session.dataTaskWithRequest(urlRequest, completionHandler: { (data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in
...
}
donde la función URLSession
es un delegado que evitará que la aplicación se bloquee debido al certificado autofirmado y aceptará de todos modos.
bajista7
lori lori
bajista7
vagrant up
ejecutarlos todos y arrancar la VM.lori lori