Работа с директивами PHP.ini в httpd.conf

По этой ссылке перечеслен список директив php.ini, которые вы можете использовать для настройки PHP. В столбце "Место изменения" показаны режимы. Эти режимы определяют, когда и где директива PHP может или не может быть установлена, и каждая директива в руководстве относится к одному из этих режимов. К примеру, некоторые настройки могут быть установлены с помощью PHP-скрипта, использующего ini_set(), тогда как другие могут требовать php.ini или httpd.conf.

Когда PHP используется как модуль Apache вы также можете менять настройки конфигурации, используя директивы в файлах конфигурации Apache (например, httpd.conf) и файлах .htaccess. Для этого вам необходимы "AllowOverride Options" или "AllowOverride All" привилегии.

Для работы с PHP в конфигурационных файлах Apache доступны 4 директивы: php_value, php_flag, php_admin_value, php_admin_flag, которые отличаются значимостью, типом устанавливаемых значений и местом применения.

  • Директивы php_value и php_flag могут использоваться как в файлах httpd.conf, так и в файлах .htaccess, т.е. их использование доступно, практически, любому владельцу сайта (при наличии соответствующих привилегий AllowOverride, о которых говорилось выше).
  • Директивы php_admin_value и php_admin_flag можно использовать только в файле httpd.conf и любой параметр, заданный с помощью этих директив не может быть переопределен в файлах .htaccess или ini_set(). Чтобы очистить предыдущее значение используйте значение none.
  • Директивы php_flag и php_admin_flag служат для установки логических значений директив php.ini.

Частные случаи применения:

  • Параметр open_basedir зададим в описании виртуального хоста, чтобы пользователь не мог его отменить через .htaccess Разрешим две директории.
    <VirtualHost *:443>
            php_admin_value open_basedir "/var/www/example.com:/tmp"
     
            ServerName example.com
            DocumentRoot /var/www/example.com
            <Directory /var/www/example.com/>
                    Options -FollowSymLinks MultiViews -Indexes
                    AllowOverride All
                    Order allow,deny
                    allow from all
            </Directory>
    </VirtualHost>

Читайте также: Директива Как включить AllowOverride, Настройка .htaccess.

📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌

💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!