Лекция
Привет, Вы узнаете о том , что такое индивидуальные настройки php для сайтов, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое индивидуальные настройки php для сайтов , настоятельно рекомендую прочитать все из категории Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend) .
В данной статье рассмотрено создание отдельной версии PHP на аккаунте, что позволяет протестировать или запустить новый сайт без глобальных правок PHP для аккаунта в целом.
Довольно часто могут возникать ситуации, когда необходимо, чтобы PHP-файлы в определенном каталоге обрабатывались интерпретатором PHP с отличной от основной версией. Например, это может потребоваться для тестирования новой версии сайта или в том случае, если на одном аккаунте размещается несколько сайтов, требующих различных настроек PHP.
Данная статья описывает способ настройки произвольного количества независимых версий PHP для работы в рамках одного аккаунта. Суть метода заключается в использовании собственного CGI-обработчика (враппера). Фактически, будет создан CGI-скрипт, единственной задачей которого будет правильная настройка переменных окружения и запуск интерпретатора PHP нужной версии. Затем при помощи единственной директивы в файле .htaccess
веб-сервер будет проинструктирован о том, что все файлы с расширением .php
внутри определенного каталога должны обрабатываться этим CGI-скриптом.
Рассмотрим на примере вариант решение данной задачи: пусть требуется для сайта site1.ru
настроить обработку скриптов средствами PHP 5.2, в то время, как остальные сайты аккаунта продолжат работу с версией, указанной в панели управления хостингом.
Авторизуйтесь на сервере хостинга, используя реквизиты доступа по SSH. Об этом говорит сайт https://intellect.icu . Для установки соединения можно воспользоваться программой PUTTY и инструкциями из статьи SSH-доступ, авторизация по ключу, использование SFTP.
Создайте файл с CGI-скриптом (собственным PHP интерпретатором):
touch ~/site1.ru/cgi-bin/php5.2 && chmod 755 ~/site1.ru/cgi-bin/php5.2
Созданный файл нужно заполнить следующим текстом:
#!/bin/sh
export PHPRC="/home/uXXXXX/site1.ru"
exec /usr/bin/php-cgi5.2 -- "$@"
здесь:
uXXXXX
-- имя Вашего пользователя на сервере хостинга. В большинстве случаев, совпадает с логином/usr/bin/php-cgi5.2
-- собственно PHP v5.2PHPRC
-- переменная окружения, указывающая PHP каталог с конфигурационным файлом php.iniСписок установленных на сервере версий PHP можно посмотреть при помощи следующей команды:
ls /usr/bin/php-cgi*
Конфигурационный файл php.ini скопируем из каталога с настройками основной версии PHP:
cp ~/etc/php/php.ini ~/site1.ru/
В скопированном файле нам потребуется поправить значение параметра extension_dir
- нужно текущее значение заменить на следующее:
/usr/lib/php5.2
здесь имя целевого каталога определяется исходя из номера выбранной версии. Например, для PHP 5.3 целевой каталог с расширениями будет иметь имя php5.3
.
Теперь необходимо сообщить веб-серверу Apache о том, что для обработки PHP-файлов у нас будет использоваться собственный враппер. Создадим файл .htaccess
в каталоге с именем сайта site1.ru
и запишем в него следующее указание:
Action application/x-httpd-php "/cgi-bin/php5.2"
И еще один .htaccess
создадим в каталоге site1.ru/cgi-bin
со следующим текстом:
<Files "php5.2">
SetHandler fcgid-script
</Files>
Проверьте работоспособность выполненной конфигурации. Для этого создадим в каталоге ~/site1.ru/www/
файл phpinfo.php со следующим содержимым:
<?php
phpinfo();
?>
Обратившись к созданному файлу через браузер, убедитесь в том, что Вы используете собственную конфигурацию PHP с версией 5.2. Это означает, что настройки выполнены правильно.
Выводы из данной статьи про индивидуальные настройки php для сайтов указывают на необходимость использования современных методов для оптимизации любых систем. Надеюсь, что теперь ты понял что такое индивидуальные настройки php для сайтов и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)
Из статьи мы узнали кратко, но содержательно про индивидуальные настройки php для сайтов
Комментарии
Оставить комментарий
Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)
Термины: Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)