Melihat informasi yang salah ini, rata-rata pengembang mungkin menebak dua alasan
1. Ada karakter khusus di tautan
2. Panjang tautan terlalu panjang(Sepertinya panjangnya bukan kesalahannya, itu samar-samar, saya lupa)
Alamat gambar kesalahan adalah sebagai berikut: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99
Selanjutnya, kami mulai menyelidiki alasan kesalahan yang mungkin kami temui
1. Periksa URL, tidak ada karakter khusus (kecualikan alasan ini)
2. URL terlihat sangat panjang pada pandangan pertama, jadi mari kita hapus setengah panjang parameter dan kemudian memintanya. Hasilnya adalah bisa berhasil, dan kemudian dengan terus-menerus menambahkan karakter, ditemukan bahwa panjangnya melebihi 339 dan melaporkan kesalahan ini, dan tidak ada karakter khusus setelah 339, jadiKami pada dasarnya menentukan bahwa penyebab kesalahan adalah karena URL terlalu panjang。
Langkah selanjutnya adalah memecahkan masalah yang relevan
Kemudian ada berbagai Baidu, periksa konfigurasi yang terkait dengan memodifikasi batas panjang querystring
Kemudian ubah web.config
1. Ubah konfigurasi maxQueryStringLength dan maxRequestLength di bawah simpul httpRuntime
2. Ubah simpul system.webServer sebagai berikut
Menyimpan dan menjalankan dengan antisipasi, kesalahannya masih sama, dan sepertinya tidak ada gunanya
Pada saat ini, saya mulai bertanya-tanya, mengapa tidak, apakah itu tidak akan berlaku, berpikir bahwa mungkin ada banyak orang seperti saya, memikirkan pengaturan global IIS, apakah pengaturan ini tidak akan ditimpa, kami masih menggunakan semua nilai yang ditetapkan
Jangan menebak, periksa saja (perhatikan bahwa requestFiltering yang Anda periksa terletak di bawah system.webServer, jangan melihat node yang salah)
Jika nonaktif, nilai overrideModeDefault adalah Tolak, yang berarti konfigurasi kita akan didasarkan pada konfigurasi spesifik situs kita.
Jadi semuanya normal, mengapa itu kesalahan ?!
Akhirnya, pengembalian yang tidak diadopsi di stackoverflow menarik perhatian saya
tautanhttps://stackoverflow.com/questi ... is-invalid-in-iis-7
Secara kasar, permintaan tersebut belum mencapai IIS dan dimatikan oleh sistem operasi.
Pada saat ini, saya mencari artikel lain di Google, yang terhubung ke dukungan teknis radio optik Microsoft
Alamatnya adalah sebagai berikuthttps://support.microsoft.com/zh ... ettings-for-windows
Inti dari kedua artikel tersebut adalah bahwa kita perlu memodifikasi registri, dan kedua artikel tersebut mungkin dimodifikasi oleh dua nilai registri berikut
Selanjutnya, coba dan buka registri CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Klik kanan pada area kosong dan pilih nilai Dword, seperti yang ditunjukkan pada gambar
Buat nama baru yang disebut UrlSegmentMaxLength, atur nilainya ke 2048, dan klik OK
Pengaturan UrlSegmentMaxCount sama seperti di atas, nilainya juga Dword 2048, klik OK.
Modifikasi hanya dapat diterapkan jika layanan HTTP dimulai ulang
- Klik Mulai, ketik Cmd, lalu klik OK.
- Pada prompt perintah, ketik net stop http dan tekan Enter.
- Pada prompt perintah, ketik net start http dan tekan Enter.
Kemudian mulai ulang IIS. Coba lagi, oke, tidak ada kesalahan, solusi sempurna
|