Saya memiliki aplikasi ASP.NET MVC dengan rute yang memungkinkan pencarian barang melalui / search / <searchterm>.
Ketika saya menyediakan "search / abc" itu berfungsi dengan baik, tetapi ketika saya menyediakan "/ search / a + b + c" (dengan benar dikodekan url) maka IIS7 menolak permintaan dengan Kesalahan HTTP 404.11 ( Modul pemfilteran permintaan dikonfigurasi untuk menolak permintaan yang berisi urutan escape ganda ). Pertama-tama, mengapa ia melakukan ini? Tampaknya hanya membuang kesalahan jika itu adalah bagian dari URL, tetapi bukan sebagai bagian dari string kueri (/ transmit? Q = a + b + c berfungsi dengan baik).
Sekarang saya dapat mengaktifkan permintaan pelolosan ganda di bagian keamanan web.config saya tetapi saya ragu untuk melakukannya karena saya tidak memahami implikasinya, dan juga mengapa server menolak permintaan "a + b + c" sebagai bagian dari URL tetapi terima sebagai bagian dari string kueri.
Adakah yang bisa menjelaskan dan memberi nasihat apa yang harus dilakukan?
/search/a%2520b%2520c
mark-up yang mengarah ke kesalahan "A berpotensi berbahaya Request.Path nilai terdeteksi dari klien (%)". Sepertinya Anda tidak bisa menang.