Поиск:

Поиск по:

Результаты поиска по запросу «»
Найдено совпадений
По вашему запросу ничего не найдено
.
Показать еще

Индивидуальные настройки PHP для сайтов

В данной статье рассмотрено создание отдельной версии PHP на аккаунте, что позволяет протестировать или запустить новый сайт без глобальных правок PHP для аккаунта в целом.

Довольно часто могут возникать ситуации, когда необходимо, чтобы PHP-файлы в определенном каталоге обрабатывались интерпретатором PHP с отличной от основной версией. Например, это может потребоваться для тестирования новой версии сайта или в том случае, если на одном аккаунте размещается несколько сайтов, требующих различных настроек PHP.

Данная статья описывает способ настройки произвольного количества независимых версий PHP для работы в рамках одного аккаунта. Суть метода заключается в использовании собственного CGI-обработчика (враппера). Фактически, будет создан CGI-скрипт, единственной задачей которого будет правильная настройка переменных окружения и запуск интерпретатора PHP нужной версии. Затем при помощи единственной директивы в файле .htaccess веб-сервер будет проинструктирован о том, что все файлы с расширением .php внутри определенного каталога должны обрабатываться этим CGI-скриптом.

Рассмотрим на примере вариант решение данной задачи: пусть требуется для сайта site1.ru настроить обработку скриптов средствами PHP 5.2, в то время, как остальные сайты аккаунта продолжат работу с версией, указанной в панели управления хостингом.

  1. Авторизуйтесь на сервере хостинга, используя реквизиты доступа по SSH. Для установки соединения можно воспользоваться программой PUTTY и инструкциями из статьи SSH-доступ, авторизация по ключу, использование SFTP.

  2. Создайте файл с CGI-скриптом (собственным PHP интерпретатором):

    touch ~/site1.ru/cgi-bin/php5.2 && chmod 755 ~/site1.ru/cgi-bin/php5.2
    
  3. Созданный файл нужно заполнить следующим текстом:

    #!/bin/sh
    export PHPRC="/home/uXXXXX/site1.ru"
    exec /usr/bin/php-cgi5.2 -- "$@"
    

    здесь:

    • uXXXXX -- имя Вашего пользователя на сервере хостинга. В большинстве случаев, совпадает с логином
    • /usr/bin/php-cgi5.2 -- собственно PHP v5.2
    • PHPRC -- переменная окружения, указывающая PHP каталог с конфигурационным файлом php.ini

    Список установленных на сервере версий PHP можно посмотреть при помощи следующей команды:

    ls /usr/bin/php-cgi*
    
  4. Конфигурационный файл php.ini скопируем из каталога с настройками основной версии PHP:

    cp ~/etc/php/php.ini ~/site1.ru/
    
  5. В скопированном файле нам потребуется поправить значение параметра extension_dir - нужно текущее значение заменить на следующее:

    /usr/lib/php5.2
    

    здесь имя целевого каталога определяется исходя из номера выбранной версии. Например, для PHP 5.3 целевой каталог с расширениями будет иметь имя php5.3.

  6. Теперь необходимо сообщить веб-серверу Apache о том, что для обработки PHP-файлов у нас будет использоваться собственный враппер. Создадим файл .htaccess в каталоге с именем сайта site1.ru и запишем в него следующее указание:

    <FilesMatch "\.php$">
    Action application/x-httpd-php "/cgi-bin/php5.2"
    </FilesMatch>
    

    И еще один .htaccess создадим в каталоге site1.ru/cgi-bin со следующим текстом:

    <Files "php5.2">
        SetHandler fcgid-script
    </Files>
    
  7. Проверьте работоспособность выполненной конфигурации. Для этого создадим в каталоге ~/site1.ru/www/ файл phpinfo.php со следующим содержимым:

    <?php
    phpinfo();
    ?>
    
  8. Обратившись к созданному файлу через браузер, убедитесь в том, что Вы используете собственную конфигурацию PHP с версией 5.2. Это означает, что настройки выполнены правильно.

Регистрация доменов

в зонах .RU .РФ

от 200 рублей Зарегистрировать домен

SSL сертификаты

Подтверждение сайта и надежная защита

передаваемых данных

Купить сертификат

Облачные VDS

дешевле чашки кофе

Процессорных ядер: 4, Память: 4 Гб, Диск: 20 Гб SSD, Резервное копирование

от 35 р/день Заказать VDS

Все, что нужно от хостинга

Простое решение для вашего сайта

Подробнее

Хранилище данных

Храни что хочешь по смешным ценам

Почасовая оплата за размещенные данные.

Заказать хранилище