Моя цель - увеличить максимальный размер файла для загрузки в WordPress. Я выполнил шаги этот ответ SE и этот учебник (кроме части .htaccess, потому что она запускает nginx, а AFAIK nginx игнорирует файлы .htaccess) безрезультатно. Похоже, он игнорирует php.ini
файлы из текущей папки.
На несвязанной установке WP я использую общий хост, который я арендую, если я помещаю php.ini
файл в папке WordPress (или любой папке), параметры в этом файле будут иметь приоритет над исходным php.ini
папка, и неуказанные параметры будут унаследованы.
Я предполагаю, что это поведение PHP по умолчанию. Начало /etc/php.ini
похоже, подтверждает, что:
[PHP]
;;;;;;;;;;;;;;;;;;;
; About php.ini ;
;;;;;;;;;;;;;;;;;;;
; PHP's initialization file, generally called php.ini, is responsible for
; configuring many of the aspects of PHP's behavior.
; PHP attempts to find and load this configuration from a number of locations.
; The following is a summary of its search order:
; 1. SAPI module specific location.
; 2. The PHPRC environment variable. (As of PHP 5.2.0)
; 3. A number of predefined registry keys on Windows (As of PHP 5.2.0)
; 4. Текущий рабочий каталог (кроме CLI)
; 5. The web server's directory (for SAPI modules), or directory of PHP
; (otherwise in Windows)
; 6. The directory from the --with-config-file-path compile time option, or the
; Windows directory (C:\windows or C:\winnt)
; See the PHP docs for more specific information.
; http://php.net/configuration.file
В официальная документация тоже вроде согласен:
Помимо основного файла php.ini, PHP сканирует файлы INI в каждом каталоге, начиная с каталога запрошенного файла PHP и продвигаясь до корня текущего документа (как установлено в $ _SERVER ['DOCUMENT_ROOT']). Если файл PHP находится за пределами корня документа, проверяется только его каталог.
В моем случае, похоже, он не работает; добавление php.ini
или php5.ini
файл с upload_max_filesize
и т. д., не будут иметь желаемого эффекта. Добавление @ini_set( 'upload_max_size' , '64M' );
до конца WP functions.php
file, как рекомендовано в другом месте, также не будет работать.
Выход php --ini
:
Configuration File (php.ini) Path: /etc
Loaded Configuration File: /etc/php.ini
Scan for additional .ini files in: /etc/php.d
Additional .ini files parsed: /etc/php.d/curl.ini,
/etc/php.d/dom.ini,
/etc/php.d/fileinfo.ini,
/etc/php.d/json.ini,
/etc/php.d/mbstring.ini,
/etc/php.d/mysql.ini,
/etc/php.d/mysqli.ini,
/etc/php.d/pdo.ini,
/etc/php.d/pdo_mysql.ini,
/etc/php.d/pdo_sqlite.ini,
/etc/php.d/phar.ini,
/etc/php.d/posix.ini,
/etc/php.d/sqlite3.ini,
/etc/php.d/sysvmsg.ini,
/etc/php.d/sysvsem.ini,
/etc/php.d/sysvshm.ini,
/etc/php.d/wddx.ini,
/etc/php.d/xmlreader.ini,
/etc/php.d/xmlwriter.ini,
/etc/php.d/xsl.ini,
/etc/php.d/zip.ini
Из phpinfo()
:
Configuration File (php.ini) Path /etc
Loaded Configuration File /etc/php.ini
Scan this dir for additional .ini files /etc/php.d
Additional .ini files parsed /etc/php.d/curl.ini, /etc/php.d/dom.ini, /etc/php.d/fileinfo.ini, /etc/php.d/json.ini, /etc/php.d/mbstring.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_sqlite.ini, /etc/php.d/phar.ini, /etc/php.d/posix.ini, /etc/php.d/sqlite3.ini, /etc/php.d/sysvmsg.ini, /etc/php.d/sysvsem.ini, /etc/php.d/sysvshm.ini, /etc/php.d/wddx.ini, /etc/php.d/xmlreader.ini, /etc/php.d/xmlwriter.ini, /etc/php.d/xsl.ini, /etc/php.d/zip.ini
Не видя ваших файлов конфигурации, я могу только предположить ..
Убедитесь, что вы внесли следующие изменения в свой nginx.conf
файл:
http {
client_max_body_size $New_File_Size;
}
Заменить $New_File_Size
к тому, что вы установили максимальный размер файла php.ini.
После того, как вы добавили эту строку в существующий файл nginx.conf, вам необходимо перезапустить ваши службы.
service php-fpm restart
service nginx reload
Если это не сработает, вставьте в корзину свои файлы конфигурации, и я помогу вам в дальнейшем.
Вам также следует обновить свою версию PHP.