Загрузка файлов больше 500 мб

12
SS
На сайте с 21.09.2014
Offline
23
1259

Здравствуйте.

При попытке загрузить на форум файлы размером больше чем 500 мб, пишет: Загруженный файл пустой.

php.ini

post_max_size = 1000M

upload_max_filesize = 2000M

nginx.conf

http {

# Main settings
sendfile on;
tcp_nopush on;
tcp_nodelay on;
client_header_timeout 1m;
client_body_timeout 1m;
client_header_buffer_size 2k;
client_body_buffer_size 256k;
client_max_body_size 1000m;
large_client_header_buffers 4 8k;
send_timeout 30;
keepalive_timeout 60 60;
reset_timedout_connection on;
server_tokens off;
server_name_in_redirect off;
server_names_hash_max_size 512;
server_names_hash_bucket_size 512;

Мне подсказали, что у меня на сайте вначале стоит апач, а не nginx.

То есть насколько я понял мне надо в apache2.conf прописать что-то. Полазив, вроде указать параметр: LimitRequestBody

Я с этой проблемой боюсь вторую неделю. У меня стоит Debian + VestaCP.

Помогите пожалуйста.

---------- Добавлено 13.08.2015 в 22:20 ----------

Вот мой: apache2.conf

# It is split into several files forming the configuration hierarchy outlined

# below, all located in the /etc/apache2/ directory:
#
# /etc/apache2/
# |-- apache2.conf
# | `-- ports.conf
# |-- mods-enabled
# | |-- *.load
# | `-- *.conf
# |-- conf.d
# | `-- *

# Global configuration
LockFile ${APACHE_LOCK_DIR}/accept.lock
PidFile ${APACHE_PID_FILE}
Timeout 30
KeepAlive Off
MaxKeepAliveRequests 100
KeepAliveTimeout 10

<IfModule mpm_prefork_module>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
ServerLimit 256
MaxClients 200
MaxRequestsPerChild 4000
</IfModule>

<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 200
MaxRequestsPerChild 4000
</IfModule>

<IfModule mpm_event_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadLimit 64
ThreadsPerChild 25
MaxClients 200
MaxRequestsPerChild 4000
</IfModule>

# These need to be set in /etc/apache2/envvars
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
#User www-data
#Group www-data

AccessFileName .htaccess

<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy all
</Files>

DefaultType None
HostnameLookups Off

ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn

# Include module configuration:
Include mods-enabled/*.load
Include mods-enabled/*.conf

# Include list of ports to listen on and which to use for name based vhosts
Include ports.conf

LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
LogFormat "%b" bytes

Include conf.d/

# Include the virtual host configurations:
#Include sites-enabled/
Оптимизайка
На сайте с 11.03.2012
Offline
396
#1

suhosin не включен ли в php?

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
A
На сайте с 04.11.2007
Offline
134
#2

За время max_input_time и max_execution_time успеваете файл загрузить? Попробуйте увеличить. И в apache Timeout.

SS
На сайте с 21.09.2014
Offline
23
#3

Оптимизайка, подскажите пожалуйста как это посмотреть. Но погуглив, по моему все таки не включен.

Есть еще у меня:

my.cnf


[client]
port=3306
socket=/var/run/mysqld/mysqld.sock

[mysqld_safe]
socket=/var/run/mysqld/mysqld.sock

[mysqld]
user=mysql
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/run/mysqld/mysqld.sock
port=3306
basedir=/usr
datadir=/var/lib/mysql
tmpdir=/tmp
lc-messages-dir=/usr/share/mysql
log_error=/var/log/mysql/error.log
max_allowed_packet = 64M
max_connections=200
max_user_connections=30
wait_timeout=60
interactive_timeout=60
long_query_time=5
innodb_file_per_table

!includedir /etc/mysql/conf.d/


---------- Добавлено 14.08.2015 в 01:45 ----------

asteroid:
За время max_input_time и max_execution_time успеваете файл загрузить? Попробуйте увеличить. И в apache Timeout.

Увеличил эти параметры на 100. Проблема не решилась...

Оптимизайка
На сайте с 11.03.2012
Offline
396
#4
sag-sag:
Оптимизайка, подскажите пожалуйста как это посмотреть.

Сделайте тестовую страницу test.php со следующим содержимым:

<?php

phpinfo();

Откройте её в браузере и поищите значение параметров

suhosin.post.max_value_length

suhosin.request.max_value_length

suhosin.post.max_vars

suhosin.request.max_vars

SS
На сайте с 21.09.2014
Offline
23
#5

У меня параметров

suhosin.post.max_value_length
suhosin.request.max_value_length
suhosin.post.max_vars
suhosin.request.max_vars

вообще нет

Вот: _wargam.net/test.php

Оптимизайка
На сайте с 11.03.2012
Offline
396
#6

upload_tmp_dir я смотрю, у вас не задана. Попробуйте задать - чтобы указывала в место с достаточным объёмом. Иначе идет запись во временный каталог по умолчанию, обычно в /tmp, а он обычно является tmpfs, т.е. находится в оперативной памяти, которой видимо и не хватает.

SS
На сайте с 21.09.2014
Offline
23
#7
Оптимизайка:
upload_tmp_dir я смотрю, у вас не задана. Попробуйте задать - чтобы указывала в место с достаточным объёмом. Иначе идет запись во временный каталог по умолчанию, обычно в /tmp, а он обычно является tmpfs, т.е. находится в оперативной памяти, которой видимо и не хватает.

Правильно я понимаю: в php.ini?

То есть, я должен указать пусть до директории /files, где у меня хранятся закачиваемые на форум вложения? Или создать например папку tmp в директории движка форума?

upload_tmp_dir /home/*****/web/wargam.net/public_html/files

или так

upload_tmp_dir /home/*****/web/wargam.net/public_html/tmp

Как правильнее?

Оптимизайка
На сайте с 11.03.2012
Offline
396
#8

Правильнее даже "upload_tmp_dir /home/*****/web/wargam.net/tmp", т.е. временная папка, недоступная извне. И убедитесь, что у веб-приложения есть в неё права на запись.

SS
На сайте с 21.09.2014
Offline
23
#9
Оптимизайка:
Правильнее даже "upload_tmp_dir /home/*****/web/wargam.net/tmp", т.е. временная папка, недоступная извне. И убедитесь, что у веб-приложения есть в неё права на запись.

Есть одна проблемка. У меня стоит VestaCP. Дерево папок у нее такого вида:

1. http://prntscr.com/84ictx

2. http://prntscr.com/84id4a

3. http://prntscr.com/84idcv. Создать папку /tmp

upload_tmp_dir /home/*****/web/wargam.net/tmp

не дает.

Попробую в директории движка...

Оптимизайка
На сайте с 11.03.2012
Offline
396
#10

Ну а /var/tmp можно указать же?

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий