5.3.9. Увімкнення обробника PHP для веб-сервера

У деяких випадках після встановлення веб-сервера обробник PHP може бути не підключений. Спосіб підключення залежить від встановленого веб-сервера.

  1. Підключіться до сервера по SSH.
  2. Перейдіть у каталог веб-сервера:
    cd /etc/httpd/
  3. Перевірте наявність модуля PHP:
    ls /etc/httpd/modules/ | grep php

    Вивід має бути приблизно таким:

    libphp*-zts.so
    libphp*.so
  4. Перевірте конфігураційні файли Apache:
    grep -n 'php' /etc/httpd/conf/*
    1. Якщо попередня команда нічого не вивела, перевірте наявність додаткових конфігураційних файлів:
      grep 'Include conf.d\/\*.conf' /etc/httpd/conf/*
      1. Якщо команда також нічого не вивела, відредагуйте файл конфігурації Apache, доповнивши його параметром завантаження додаткових конфігураційних файлів:
        echo "Include conf.d/*.conf" >> /etc/httpd/conf/httpd.conf
      2. Якщо вивід команди був вигляду /etc/httpd/conf/httpd.conf:Include conf.d/*.conf, то додаткові конфігураційні файли підключені.
      3. Перевірте наявність файлу конфігурації PHP:
        ls /etc/httpd/conf*/* | grep php
        1. Якщо попередня команда нічого не вивела, створіть конфігураційний файл (замість X вкажіть номер потрібної версії PHP):
          cat > /etc/httpd/conf.d/php.conf <<EOF
          <IfModule prefork.c>
            LoadModule phpX_module modules/libphpX.so
          </IfModule>
          
          <IfModule !prefork.c>
            LoadModule phpX_module modules/libphpX-zts.so
          </IfModule>
          
          AddHandler phpX-script .php
          AddType text/html .php
          
          DirectoryIndex index.php
          
          php_value session.save_handler "files"
          php_value session.save_path    "/var/lib/php/session"
          php_value soap.wsdl_cache_dir  "/var/lib/php/wsdlcache"
          EOF
    2. Якщо команда, виконана на кроці 4 або 4.1.3, вивела результат (як правило, він буде схожий з текстом, вказаним на кроці 4.1.3.1), то порівняйте версії PHP, вказані в конфігураційному файлі, з результатом команди, виконаної на кроці 3. Якщо вони різні, відредагуйте відповідний конфігураційний файл і замініть версію:
      nano /etc/httpd/conf*/*.conf

      Необхідну версію вкажіть замість символу X у таких рядках:

      LoadModule phpX_module modules/libphpX.so
      LoadModule phpX_module modules/libphpX-zts.so
      AddHandler phpX-script .php

      Залежно від попереднього кроку змінюйте певний конфігураційний файл:

      • Якщо попереднім кроком був 4, то потрібно редагувати файл /etc/httpd/conf/httpd.conf.
      • Якщо попереднім кроком був 4.1.3, то потрібно редагувати файл /etc/httpd/conf.d/php.conf.
  5. Перезапустіть Apache:
    service httpd restart
    • Якщо перезапуск пройшов успішно, перевірте роботу PHP на сайтах.
    • Якщо під час перезапуску виникли помилки, перевірте конфігураційні файли на наявність проблем з переносами рядків або наявність некоректних параметрів.
Зміст