|
1. 메서드 길이 한계 얻기 Http Get 메서드가 제출하는 데이터의 크기와 길이에는 제한이 없으며, HTTP 프로토콜 명세도 URL의 길이를 제한하지 않습니다. 이 제한은 특정 브라우저와 서버에 의해 부과되는 제한입니다. 예를 들어, IE의 URL 길이 제한은 2083바이트(2K+35)입니다. 다음은 다양한 브라우저와 서버의 최대 처리 능력에 대한 몇 가지 설명입니다. 마이크로소프트 인터넷 익스플로러 (브라우저) IE는 URL 최대 2083자 제한이 있으며, 이 수를 초과하면 제출 버튼이 응답하지 않습니다. 파이어폭스 (브라우저) 파이어폭스의 경우 URL은 65,536자로 제한됩니다. Safari (브라우저) URL 최대 길이는 80,000자로 제한됩니다. Opera (브라우저) URL 최대 길이는 190,000자로 제한됩니다. 구글 (크롬) URL 길이는 최대 8182자로 제한되어 있습니다. Apache (서버) 최대 허용 URL 길이는 8,192자입니다. 마이크로소프트 인터넷 정보 서버(IIS) 허용 가능한 최대 URL 길이는 16,384자입니다. 위 데이터를 통해 모든 사용자가 정상적으로 탐색하려면 최대 길이 제한인 IE(2083자)를 넘지 않는 것이 최선임을 알 수 있습니다. 물론 URL이 사용자에게 직접 제공되지 않고 프로그램 호출에 제공된다면, 길이는 웹 서버에만 영향을 받습니다. 참고: 중국어 전송의 경우, 최종 인코딩 형태는 urlencode로 전송되며, 브라우저 인코딩이 UTF8일 경우 최종 인코딩 문자 길이는 9자입니다. 따라서 GET 메서드를 사용하면 최대 길이는 URL 최대 길이에서 실제 경로 내 문자 수를 뺀 값과 같습니다. 2. POST 메서드 길이 제한이론적으로 POST에는 크기 제한이 없습니다. HTTP 프로토콜 명세에도 크기 제한이 없지만, 서버 핸들러의 처리 능력이 제한 효과입니다. 예를 들어, Tomcat의 POST 크기 제한을 제거하세요(Tomcat은 기본값 2M입니다); tomcat 디렉터리의 conf 디렉터리를 열고 server.xml 파일을 열고 수정하세요 <커넥터 디버그="0" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="8080" redirectPort="8443" enableLookups="false" minSpareThreads="25" maxSpareThreads="75" maxThreads="150" maxPostSize="0" URIEncoding="GBK" > </Connector> 빨간 글꼴 부분 maxPostSize="0" 추가(0 설정은 POST의 크기 제한을 제거함)
|