2012-02-29 11 views
5

Estoy escribiendo un archivo .pac para usar con iOS5 sin jailbreak, pero me da problemas para hacer coincidir la URL que comienza con "https" (p. Ej .: https://test.com).HTTPS en el archivo PAC

Aquí es mi guión:

function FindProxyForURL(url, host) { 
    if (shExpMatch(url, "https://*")) return "PROXY 123.123.123.123"; 
    return 'DIRECT'; 
} 

Y si emparejado "https://test.com", ¿cómo puedo volver "https://123.123.123.123" a la URL?

Respuesta

1

No puede proxy el protocolo HTTPS sin romper la seguridad de extremo a extremo, que es su única característica distintiva. El motivo por el que tus coincidencias "no funcionan" es que tu archivo PAC se ignora para HTTPS.

Enrutar el tráfico entre el navegador y un proxy en el dispositivo a través de HTTPS tampoco tiene sentido, independientemente de si es técnicamente posible. Me imagino que se ha hecho imposible por razones de seguridad (para que los usuarios no puedan ser engañados y pensar que el tráfico es seguro cuando no lo es) pero no he investigado.

+3

Eso no es cierto, el archivo PAC no se ignora para HTTPS - HTTPS * puede * ser procesado de forma segura mediante el método CONNECT, que básicamente solo transmite una secuencia TCP desde la computadora cliente a través del proxy a la computadora remota. La conexión aún está encriptada y el proxy no puede ver el tráfico en texto plano. – Johnny

+0

Derecha. El archivo PAC no se ignora y para el objetivo HTTPS, se utiliza el método CONNECT. Y en tal caso, el proxy no tiene conocimiento de las comunicaciones que se producen entre el servidor y el cliente. Agregar mi comentario porque la respuesta aceptada difunde la información incorrecta. –

+0

Gracias por las actualizaciones. Lamentablemente, no puedo eliminar esta respuesta porque es aceptada. – tripleee

0

Utilice esta:

if (shExpMatch(url, "https:**"))

Esto debe solucionarlo.