[php] 최대 업로드 파일 크기 변경

액세스 할 수없는 PC에 호스팅 된 웹 사이트가 있습니다. 사람들이 최대 30MB의 mp3 파일을 업로드 할 수있는 업로드 양식이 있습니다. 내 서버 측 스크립트는 PHP로 수행됩니다.

파일을 업로드하려고 할 때마다 파일이 허용 된 최대 크기를 초과한다는 오류 메시지가 표시되므로 크기를 늘려야합니다. 웹에 대한 나의 연구에 따르면 .htaccess내가 액세스 할 수없는 파일을 변경하면 작동하지 않습니다. 다른 사람들은 php.ini작동하지 않는 루트에 사용자 정의 파일을 추가해야한다고 제안했습니다 . 다른 제안?



답변

당신의 값으로 설정해야 upload_max_filesize하고 post_max_sizephp.ini 파일의를 :

; Maximum allowed size for uploaded files.
upload_max_filesize = 40M

; Must be greater than or equal to upload_max_filesize
post_max_size = 40M

php.ini 파일을 수정 한 후 새 구성을 사용하려면 HTTP 서버를 다시 시작해야합니다.

php.ini를 변경할 수 없다면 운이 없습니다. 런타임시이 값을 변경할 수 없습니다. php.ini에 지정된 값보다 큰 파일을 업로드하면 호출이에 도달 할 때까지 실패했습니다 ini_set.

핵심 php.ini 지시문 설명을 참조하십시오 .


답변

.htaccess파일을 통해 변경할 수 있습니다 .

.htaccess파일은 파일과 동일한 디렉토리에 저장 .php됩니다. 해당 폴더와 모든 하위 폴더의 구성을 수정합니다. .htaccess선택한 디렉토리에 파일 을 작성 하거나 사용하는 경우 수정하면됩니다.

다음은 업로드 제한을 늘릴 수있게합니다 (서버 제공자가을 통해 PHP 구성 변경을 허용하는 경우 .htaccess).

php_value upload_max_filesize 40M
php_value post_max_size 42M


답변

나는 같은 문제가 있었고 .user.ini 파일을 만들고 업로드 스크립트가있는 디렉토리에 넣었습니다. 해당 파일 내부 에서이 두 값을 설정했습니다.

  upload_max_filesize = 40M

  post_max_size = 40M

그리고 그것은 나를 위해 잘 작동했습니다!


답변

ini_set 함수를 사용할 수도 있습니다 (5.3 이하의 PHP 버전 만 해당).

ini_set('post_max_size', '64M');
ini_set('upload_max_filesize', '64M');

@acme이 말했듯이, PHP 5.3 이상 에서이 설정은 PHP_INI_PERDIR 지시어이므로 ini_set을 사용하여 설정할 수 없습니다. 대신 user.ini를 사용할 수 있습니다.


답변

ini 파일을 찾으려면 먼저 다음을 실행하십시오.

php -i | grep -i "loaded configuration file"

그런 다음 파일을 열고 변경하십시오.

upload_max_filesize = 2M
post_max_size = 2M

2M을 원하는 크기 (예 : 100M)로 바꿉니다.

나는 조금 더 많은 정보를 가진 블로그 게시물을 가지고있다 . 워드 프레스 용 파일


답변

나는 과거에 같은 문제가 .. 그리고 나는 .htaccess파일 을 통해 그것을 고쳤다

PHP 구성을 변경할 때 내부 서버 오류 가 발생 하는 것을 제외하고 .htaccess구성을 IfModule태그에 넣어야
합니다.

이것은 예입니다, 그것은 나를 위해 잘 작동합니다 :

<IfModule mod_php5.c>
   php_value upload_max_filesize 40M
   php_value post_max_size 40M
</IfModule>

더 많은 것을 이해하려면 PHP 참조입니다.
http://php.net/manual/en/configuration.changes.php


답변

.user.iniPHP 파일 스크립트가있는 디렉토리에서 파일을 생성하여이 문제를 해결했습니다 (이 디렉토리의 모든 PHP 스크립트가 새로운 파일 크기 제한을 가짐을 의미합니다)

내용은 다음 .user.ini과 같습니다.

upload_max_filesize = 40M
post_max_size = 40M