Matydamas šią klaidingą informaciją, vidutinis kūrėjas gali atspėti dvi priežastis
1. Nuorodoje yra specialiųjų simbolių
2. Nuorodos ilgis per ilgas(Atrodo, kad ilgis nėra kaltas, jis neaiškus, pamiršau)
Klaidos vaizdo adresas yra toks: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99
Tada pradėjome tirti klaidų, su kuriomis galime susidurti, priežastis
1. Patikrinkite URL, nėra specialiųjų simbolių (neįtraukite šios priežasties)
2. Iš pirmo žvilgsnio URL atrodo tikrai ilgas, todėl ištrinkime pusę parametro ilgio ir paprašykime. Rezultatas yra tas, kad jis gali būti sėkmingas, o tada nuolat pridedant simbolius, nustatoma, kad ilgis viršija 339 ir praneša apie šią klaidą, o po 339 nėra specialiųjų simbolių, taigiIš esmės nustatėme, kad klaidos priežastis turėtų būti per ilgas URL。
Kitas žingsnis - išspręsti atitinkamas problemas
Tada yra įvairių Baidu, patikrinkite konfigūraciją, susijusią su užklausos eilutės ilgio limito keitimu
Tada pakeiskite web.config
1. Pakeiskite konfigūracijas maxQueryStringLength ir maxRequestLength mazge httpRuntime
2. Pakeiskite mazgą system.webServer taip:
Taupant ir bėgant su laukimu, klaidos vis dar tos pačios, ir atrodo, kad nėra jokios naudos
Šiuo metu pradėjau domėtis, kodėl gi ne, ar jis neįsigalios, galvodamas, kad gali būti daug tokių žmonių kaip aš, galvojančių apie pasaulinį IIS nustatymą, ar šis nustatymas nebus ignoruojamas, mes vis dar naudojame visas nustatytas vertes
Nespėkite, tiesiog patikrinkite (atkreipkite dėmesį, kad užklausaFiltravimas, kurį tikrinate, yra sistemoje.webServer, nežiūrėkite į netinkamą mazgą)
Jei jis išjungtas, overrideModeDefault reikšmė yra Deny, o tai reiškia, kad mūsų konfigūracija bus pagrįsta konkrečia mūsų svetainės konfigūracija.
Taigi viskas normalu, kodėl tai klaida?!
Galiausiai, mano dėmesį patraukė revert, kuris nebuvo priimtas stackoverflow
saitashttps://stackoverflow.com/questi ... is-invalid-in-iis-7
Grubiai tariant, užklausa dar nepasiekė IIS ir ją užmuša operacinė sistema.
Šiuo metu ieškojau kito "Google" straipsnio, kuris susietas su "Microsoft" optinio radijo technine pagalba
Adresas yra tokshttps://support.microsoft.com/zh ... ettings-for-windows
Dviejų straipsnių esmė yra ta, kad mums reikia modifikuoti registrą, o abu straipsniai tikriausiai yra modifikuoti šiomis dviem registro reikšmėmis
Tada išbandykite ir eikite į registrą CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Dešiniuoju pelės mygtuku spustelėkite tuščią sritį ir pasirinkite Dword reikšmę, kaip parodyta paveikslėlyje
Sukurkite naują pavadinimą pavadinimu UrlSegmentMaxLength, nustatykite reikšmę į 2048 ir spustelėkite Gerai
UrlSegmentMaxCount nustatymas yra toks pat kaip aukščiau, reikšmė taip pat yra Dword 2048, spustelėkite Gerai.
Modifikavimas gali įsigalioti tik paleidus HTTP paslaugą iš naujo
- Spustelėkite Pradėti, įveskite Cmd, tada spustelėkite Gerai.
- Komandų eilutėje įveskite net stop http ir paspauskite Enter.
- Komandų eilutėje įveskite net start http ir paspauskite Enter.
Tada iš naujo paleiskite IIS. Bandykite dar kartą, gerai, be klaidų, puikus sprendimas
|