Основы работы с VPS / Устанавливаем php

Чтобы разворачивать php проекты, необходимо установить собственно сам php. К сожалению, в убунте по умолчанию доступна немного устаревшая 7-ая версия php.

Поэтому чтобы не отставать от прогресса, подключим сторонний репозиторий, который содержит самые новые версии php. Репозиторий поддерживает Ондржей Сури, разработчик Debian, так что источник надежный.

В общем пишем

sudo apt install software-properties-common
sudo add-apt-repository  ppa:ondrej/php

первая команда ставит пакет, который упрощает подключение сторонних репозиториев, а вторая собственно подключает репозиторий.

На вопрос тыкаем enter

после того как репозиторий добавится и обновится кэш можно ставить себе php. Пишем (вместо 8.2 можно написать другую версию)

sudo apt install php8.2-fpm -y

И ждем пока установится.

php-fpm – это не просто компилятор/интерпретатор php, это целый сервис, который можно подключить к nginx и, который будет автоматом выполнять скрипты и возвращать результат их обработки обратно юзеру.

По запуску проверяем что сервис запустился

sudo systemctl status php8.2-fpm.service

теперь давайте настроим наш nginx конфиг, чтобы он пробрасывал php файл в php-fpm.

Так как php-fpm работает через сокет файл, поэтому надо найти где этот файл создаётся, чтобы можно было указать его в настройках.

И так, идем в настройки fpm в файлик /etc/php/8.2/fpm/pool.d/www.conf. В файлике ищем ключ listen:

это собственно сокет-файл в который надо пробрасывать php файлы из nginx.

Теперь проверим, действительно ли существует такой файл:

пойдем в конфиг nginx-хоста, выглядит он у меня так

добавим в него

location ~ \.php$ {
   include snippets/fastcgi-php.conf; 
   # тут путь к сокет файлу
   fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
}

и еще index.php добавим в index. Получится вот так:

тестируем конфиг

sudo nginx -t

если все ок, то выдаст такое

ну и перегружаем nginx

sudo systemctl reload nginx

теперь добавим в нашу папку виртуального хоста файлик index.php со следующим содержимым

и можно теперь открыть ссылку нашего поддомена http://test1.ovz2.mkatash.m29on.vps.myjino.ru/ в браузере и увидеть:

что говорит, что у нас все успешно подключилось.

Ну и для полного счастья, надо настроить еще чтобы все php запросы шли в index.php

Теперь все идеально! =)

5

Развернуть свой php проект на сервере