2016-07-06 4 views
3

제출할 양식에 8000 개의 체크 박스가 있습니다. 얼마나 좋지 않은지에 대한 의견이 없습니다.엔티티 요청이 너무 큼 apache

htaccess로

php_value post_max_size 20M 
php_value max_input_vars 10000 
php_value suhosin.get.max_vars 10000 
php_value suhosin.post.max_vars 10000 
php_value suhosin.request.max_vars 10000 

내가 양식을 제출할 때 나는 Request Entity Too Large 오류를 얻고있다.

3000 개의 체크 박스가 있었는데 정상적으로 작동했습니다. 좀 더 많은 설정이 없거나 아파치 이외의 서비스를 다시 시작해야합니까? 이외에도

: 내가 OP에서 주석을 참조 파일에 올바른 로그에보고 한 후

postsize = $("form").not("[type='file']").serialize().length; 

결과는 postsize == 165655

+1

입력 변수 크기를 20000과 같이 늘려 보았습니까? 어쩌면 10000 한계가 8000 개의 체크 박스와 다른 폼 요소를 능가하는 것일 수 있습니다. –

+0

그냥 가면서 여전히 같은 오류를 줬어. 하지만 너무 많은 체크 박스를 사용하면 max_inputs를 처음으로 늘려야 할 때 오류가 발생하지 않았습니다. 오류없이 체크 상자를 잘라 버렸습니다. – Phil

+0

https://devdocs.io/apache_http_server/mod/core#limitrequestbody – hjpotter92

답변

1

이다 사용하여 내 게시물의 크기를 확인, 나는 ModSecurity를가 POST 요청을 거부했다 발견 인터넷 검색을 통해이 솔루션을 찾을 수있었습니다.

내가 임의의 큰 숫자를 사용 etc/apache2/sites-available/[your_site.conf]

<IfModule mod_security2.c> 
    SecRequestBodyNoFilesLimit 5242880 
</IfModule> 

즉 추가하여 사이트 구성에 다음을 크기 수당을 증가하지만 당신은 당신이 편안하게 어떤 번호를 사용할 수 있습니다 ... 당신의 노출/심각도를 증가 DOS 공격을 일으킨다.