я использую PHP 7.2.10 на моем ноутбуке, который работает в 64-разрядной операционной системе Windows 10 Home Single Language.
Я установил последнюю версию XAMPP установщик на моем ноутбуке, который установил Apache / 2.4.34 (Win32)
Я наткнулся на следующий текст из Руководство по PHP :
.файлы user.ini
Начиная с PHP 5.3.0, PHP включает поддержку INI-файлов конфигурации на
на основе каталога. Эти файлы обрабатываются только CGI / FastCGI
SAPI. Эта функция устаревает расширение PECL htscanner. Если
вы используете PHP как модуль Apache, используйте.htaccess
файлы для того же
эффект.В дополнение к основному
php.ini
файл, PHP сканирует файлы INI в каждом
каталог, начиная с каталога запрошенного файла PHP, и
работает до текущего корня документа (как установлено в
$_SERVER['DOCUMENT_ROOT']
). В случае, если файл PHP находится за пределами
Корень документа, проверяется только его каталог.Только настройки INI с режимами PHP_INI_PERDIR а также PHP_INI_USER будут
быть распознанным в INI-файлах в стиле .user.ini.Две новые директивы INI, user_ini.filename а также user_ini.cache_ttl
контролировать использование пользовательских файлов INI.user_ini.filename устанавливает имя файла, который ищет PHP в каждом
каталог; если задана пустая строка, PHP вообще не сканирует.
по умолчанию .user.ini.user_ini.cache_ttl контролирует, как часто пользовательские файлы INI перечитываются.
по умолчанию 300 секунд (5 минут).
Ниже приведены сомнения, которые возникли у меня в голове после прочтения приведенного выше текста:
INI files
(Т.е. .user.ini-style INI files
(.htaccess files
в случае PHP работает как модуль Apache)) в каждом каталоге? Я имею в виду, нет необходимости указывать каталоги проекта, который содержит INI files
(Т.е. .user.ini-style INI files
(.htaccess files
в случае PHP работает как модуль Apache))?INI files
(Т.е. .user.ini-style INI files
(.htaccess files
в случае PHP работает как модуль Apache))?INI files
(Т.е. .user.ini-style INI files
(.htaccess files
в случае PHP, работающего как модуль Apache)) присутствующие в разных каталогах проекта могут иметь одинаковые директивы с разными значениями или пропустить некоторые директивы или иметь некоторые дополнительные директивы?.htaccess
файл, который связан с апаш веб сервер?Пожалуйста, предоставьте ответы на все мои вопросы в пошаговом порядке.
Спасибо.
4:
#format
php_value setting_name setting_value
#example
php_value upload_max_filesize 10M
Всю информацию можно найти в руководстве: http://php.net/manual/en/configuration.php
Обратите внимание, что вы не можете установить все конфигурации в файлах user.ini и .htaccess.
Смотрите здесь для получения дополнительной информации: http://php.net/manual/en/configuration.changes.modes.php.
Также обратите внимание, что файлы user.ini могут быть отключены в конфигурации Сервера.
1 — Да, если в каталоге есть пользовательский INI PHP и / или файл .htaccess, это будет прочитано и переопределит систему php.ini
2 — Нет, нет необходимости иметь PHP INI или файл htaccess в каждом каталоге, и большинство хостингов не позволяют использовать пользовательские файлы PHP INI и отключают использование php_value из файлов htaccess.
3 — файл PHP INI сканируется из корневого каталога в текущий каталог.
Например, если максимальный размер загрузки по умолчанию составляет 50 МБ, а для корневого каталога PHP INI установлено значение 100 МБ, то значение 100 МБ вступает в силу.
Но если вы находитесь в каталоге «Admin» и в нем есть phi ini-файл с максимальным размером загрузки, равным 20 МБ, то при загрузке с пути / admin и всех дочерних путей вы будете ограничены 20 МБ файлами (если они не имеют своих собственный файл PHP INI).
4 — В файле .htaccess вы можете использовать «php_value», если ваш веб-хостинг позволяет это.
Например
php_value upload_max_filesize 100M
Смотрите здесь для более подробного объяснения:
Переопределение php.ini на сервере
5 — Как я уже говорил в пункте 3. INI-файл PHP сканируется из корневого каталога в текущий каталог. Например, если путь — / admin / advanced, он сначала просматривает системный PHP INI, затем проверяет корневой каталог (/), переопределение и значения, затем идет в каталог администратора, переопределение и значения и, наконец, расширенный каталог.
Стоит отметить, что если вы планируете использовать Shared Hosting, вы, скорее всего, не сможете использовать свои собственные файлы INI PHP и не сможете использовать php_value в своем HTACCESS, так как большинство провайдеров склонны отключать эти функции.
Для получения более подробной информации, пожалуйста, смотрите руководство по PHP:
А для Apache Override: