Bagaimana saya bisa men-debug PAC (proxy auto config) pada Windows 8.1 (IE11 dan Modern UI)?

12

Pada sistem yang lebih lama seperti Windows 7 + IE10, memanggil "alert ()" dalam file PAC akan menyebabkan dialog ditampilkan. Namun, dengan Windows 8.1 tidak ada dialog yang ditampilkan bahkan jika IE11 tampaknya menggunakan PAC.

Situasi saya saat ini adalah IE11 dapat menggunakan proksi (SOCKS) (dikembalikan oleh PAC), tetapi aplikasi UI modern benar-benar terputus dari Internet. Tampaknya IE11 dan Modern UI memperlakukan pengaturan PAC berbeda tetapi saya tidak dapat menemukan cara untuk men-debug itu.

Singkatnya, pertanyaan saya adalah

  1. Bagaimana saya bisa men-debug PAC dengan IE11 pada Windows 8.1?
  2. Bagaimana saya bisa men-debug PAC dengan UI Modern di Windows 8.1?
Jackie Ku
sumber
1
Saya telah mengalami masalah yang sama - baik Firefox, Chrome atau IE tampaknya tidak menerima panggilan peringatan. Saya telah menggunakan utmtools.com/PacMagic dan code.google.com/p/pacparser untuk tujuan 'pengujian'.
oviava
+1 untuk PacMagic. Generator dapat menggunakan beberapa penyesuaian, tetapi fitur pengujian berfungsi dengan baik. Dan itu hanya satu file exe mandiri.
Neil

Jawaban:

3

IE11 PAC-file berubah

Ada perubahan yang dibuat oleh Microsoft untuk bagaimana IE11 menangani file PAC lokal. Anda dapat membaca tentang mereka di sini atau lihat di bawah untuk beberapa info cepat.

Perhatikan juga, bahwa alert()pernyataan tidak lagi berfungsi pada Windows 8.


Dengan IE11, penggunaan file PAC melalui protokol file tidak lagi mungkin, kecuali jika Anda menambahkan kunci registri berikut:

[HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings]
(DWORD)"EnableLegacyAutoProxyFeatures"=1

PAC-file melalui contoh file-protokol

Catatan: pernyataan peringatan tidak akan muncul lagi saat menggunakan Windows 8 atau lebih tinggi!


File DEBUG PAC dengan AUTOPROX ( Tautan Unduhan )

Terkadang Anda hanya perlu menguji file PAC Anda, jika rute yang diharapkan dikembalikan, meskipun Anda tidak memiliki akses ke situs web yang dimaksud. Untuk pengujian semacam itu, Anda dapat menggunakan alat utilitas baris perintah (terlampir) autoprox.exe, yang dibuat oleh Pierre-Louis Coll.

Saat memulai dalam CMDparameter tanpa tambahan penggunaan ditampilkan:

C:\temp>autoprox
Version : 2.1.0.0
Written by [email protected]
Usage : AUTOPROX -s  (calling DetectAutoProxyUrl and saving wpad.dat file in temporary file)
Usage : AUTOPROX  [-h] url [Path to autoproxy file]
       -h: calls InternetInitializeAutoProxyDll with helper functions implemented in AUTOPROX
AUTOPROX url: calling DetectAutoProxyUrl and using WPAD.DAT logic to find the proxy for the url
AUTOPROX url path: using the autoproxy file from the path to find proxy for the url
Example: autoprox -s
Example: autoprox http://www.microsoft.com
Example: autoprox -h http://www.microsoft.com c:\inetpub\wwwroot\wpad.dat
Example: autoprox http://www.microsoft.com http://proxy/wpad.dat

Berikut ini adalah output dengan sampel kami:

C:\temp>autoprox http://us.msn.com c:\temp\sample.pac
The Winsock 2.2 dll was found okay
url: http://us.msn.com
autoproxy file path is : c:\temp\sample.pac
Calling InternetInitializeAutoProxyDll with c:\temp\sample.pac
        Calling InternetGetProxyInfo with url http://us.msn.com and host us.msn.com
        Proxy returned for url http://us.msn.com is:
PROXY myproxy:80;

Ketika Anda ingin melihat fungsi terkait DNS mana yang telah dipanggil, Anda dapat menggunakan parameter "-h" sebagai tambahan: Di sini output, saat ini digunakan:

C:\temp>autoprox -h http://us.msn.com c:\temp\sample.pac
The Winsock 2.2 dll was found okay
Will call InternetInitializeAutoProxyDll with helper functions
url: http://us.msn.com
autoproxy file path is : c:\temp\sample.pac
Calling InternetInitializeAutoProxyDll with c:\temp\sample.pac
        Calling InternetGetProxyInfo with url http://us.msn.com and host us.msn.com
ResolveHostByName called with lpszHostName: us.msn.com
ResolveHostByName returning lpszIPAddress: 65.55.206.229
        Proxy returned for url http://us.msn.com is:
PROXY myproxy:80;

Penanganan Kesalahan di autoprox.exe:

  1. Ketika Anda menentukan file PAC yang tidak ada (mis. Kesalahan ketik pada command-line), hasil dari autoprox.exe adalah:

    ERROR: InternetInitializeAutoProxyDll failed with error number 0x6 6.

  2. Ketika file Pac berisi kesalahan sintaksis, Anda biasanya menerima pesan berikut yang ditampilkan:

    ERROR: InternetGetProxyInfo failed with error number 0x3eb 1003.

Setelah menyelesaikan tes lokal, file PAC harus disalin ke server web di mana ia akan diakses melalui protokol http.

bentek
sumber