Vedendo questa disinformazione, lo sviluppatore medio potrebbe intuire due motivi
1. Ci sono caratteri speciali nel link
2. La lunghezza del collegamento è troppo lunga(Sembra che la lunghezza non sia la colpa, è vaga, me ne sono dimenticato)
L'indirizzo dell'immagine di errore è il seguente: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99
Successivamente, abbiamo iniziato a indagare le ragioni degli errori che potevamo incontrare
1. Controlla l'URL, non ci sono caratteri speciali (escludendo questo motivo)
2. L'URL sembra molto lungo a prima vista, quindi eliminiamo metà della lunghezza del parametro e poi lo richiediamo. Il risultato è che può avere successo, e poi aggiungendo costantemente caratteri si scopre che la lunghezza supera 339 e questo errore viene segnalato, e non ci sono caratteri speciali dopo 339, quindiAbbiamo praticamente stabilito che la causa dell'errore dovrebbe essere che l'URL è troppo lungo。
Il passo successivo è risolvere i problemi rilevanti
Poi ci sono vari Baidu, controlla la configurazione relativa alla modifica del limite di lunghezza della querystring
Poi modifica il web.config
1. Modificare le configurazioni maxQueryStringLength e maxRequestLength sotto il nodo httpRuntime
2. Modifica il nodo system.webServer come segue
Salvando e correndo con anticipazione, gli errori restano gli stessi, e sembra che non serva a nulla
In quel momento ho iniziato a chiedermi, perché no, se non avrà effetto, pensando che ci potrebbero essere molte persone come me, pensando all'impostazione globale dell'IIS, se questa impostazione non sarà sovrascritta, usiamo ancora tutti i valori di insieme
Non indovinare, controlla semplicemente (nota che il requestFiltering che controlli si trova sotto system.webServer, non guardare il nodo sbagliato)
Se è disattivata, il valore di overrideModeDefault è Deny, il che significa che la nostra configurazione sarà basata sulla configurazione specifica del nostro sito.
Quindi tutto è normale, perché è un errore?!
Infine, un revert che non è stato adottato su StackOverflow ha attirato la mia attenzione
collegamentohttps://stackoverflow.com/questi ... is-invalid-in-iis-7
In termini generali, la richiesta non è ancora arrivata a IIS ed è stata bloccata dal sistema operativo.
In quel momento, ho cercato un altro articolo su Google, che ricollegava al supporto tecnico radio ottico di Microsoft
L'indirizzo è il seguentehttps://support.microsoft.com/zh ... ettings-for-windows
Il succo dei due articoli è che dobbiamo modificare il registro, e probabilmente i due articoli sono modificati dai seguenti due valori del registro
Poi, prova e vai al registro CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters
Clicca con il tasto destro sull'area vuota e seleziona il valore Dword, come mostrato nell'immagine
Crea un nuovo nome chiamato UrlSegmentMaxLength, imposta il valore a 2048 e clicca su OK
L'impostazione di UrlSegmentMaxCount è la stessa di sopra, il valore è anche Dword 2048, clicca OK.
La modifica può entrare in vigore solo se il servizio HTTP viene riavviato
- Clicca su Start, digita Cmd e poi clicca OK.
- Al prompt dei comandi, digita net stop http e premi Invio.
- Al prompt dei comandi, digita net start http e premi Invio.
Poi riavvia IIS. Riprova, ok, nessun errore, soluzione perfetta
|