На сайте с 22.02.2007
18 февраля 2010, 13:07
Никак не получается установить php-fpm.
Делаю все как написано тут: http://php-fpm.org/wiki/Documentation
После установки, запускаю: php-fpm start.
-bash: php-fpm: command not found
В /usr/local/sbin/ пусто.
ОС: CentOS 5.4
Может кто нибудь что нибудь подскажет?
На сайте с 03.09.2009
18 февраля 2010, 13:29
/etc/init.d/php-fpm start ?
На сайте с 28.01.2010
18 февраля 2010, 13:40
Если все делали как по ссылке, то php-fpm должен быть там, где указано в документации.
Попробуйте найти при помощи find:
find /usr/local -name php-fpm
На сайте с 22.02.2007
18 февраля 2010, 13:45
На сайте с 28.01.2010
18 февраля 2010, 13:50
На всякий случай: вы `make all install` делали? В ./configure path не меняли?
На сайте с 22.02.2007
18 февраля 2010, 15:21
На всякий случай: вы `make all install` делали? В ./configure path не меняли?
делал, не менял
На сайте с 01.12.2009
18 февраля 2010, 15:46
делал, не менял
10$ Разберёмся с вашим php-fpm 🙂
Администратор Linux,Freebsd. ( /ru/forum/494299
)
построения крупных проектов.
ICQ#: 241606.
На сайте с 19.02.2005
18 февраля 2010, 16:39
0$, ставьте с репозитория CentosALT через yum 🙂
Не стоит плодить сущности без необходимости
На сайте с 28.01.2010
18 февраля 2010, 16:45
maxttor
, чудес не бывает. Постучитесь ко мне в Jabber/ICQ, помогу вам найти php-fpm.
На сайте с 22.02.2007
19 февраля 2010, 18:59
10$ Разберёмся с вашим php-fpm 🙂
Спасибо, за помощь.
Док репозитория
подсказывает что можно установить через pecl
, но мне нужно было php-redis
для конкретной версии php7.3
.
Классический вариант, которым я пользовался в Ubuntu 18.04 LTS
не прошел:
$ sudo apt install php7.3-redis
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово
E: Невозможно найти пакет php7.3-redis
E: Не удалось найти ни один пакет с помощью шаблона «php7.3-redis»
Начинаем искать в интернетах и находим этот безответный пост
, видим ссылку на Ondřej Surý repo
, и смотрим
что там есть для Ubuntu php-redis
для разных версий PHP
.
Пробуем установить репозиторий в apt
как указано в инструкции:
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
Повторяем установку и видим все тот же текст:
$ sudo apt install php7.3-redis
..
E: Невозможно найти пакет php7.3-redis
Открываем файл /etc/apt/sources.list.d/ondrej-ubuntu-php-hirsute.list
и видим в нем одну незакоментированную строку:
deb http://ppa.launchpad.net/ondrej/php/ubuntu/ hirsute main
Вспоминаем про именование версий Ubuntu
, еще раз смотрим в репозиторий
и понимаем что php7.3-redis
там нет (а php5.6-redis
есть).
Однако, для Ubuntu 20.04
есть то что нужно. Возникает мысль: а не попробовать ли для 21.04 пакеты от 20.04?
На свой страх и риск
редактируем файл /etc/apt/sources.list.d/ondrej-ubuntu-php-hirsute.list
— hirsute
( Ubuntu 21.04
) меняем на focal
( Ubuntu 20.04
):
deb http://ppa.launchpad.net/ondrej/php/ubuntu/ focal main
Затем обновляем списки пакетов и пробуем установить:
$ sudo apt-get update
$ sudo apt install php7.3-redis
Теперь должно получиться 🙂
Nginx – это веб-сервер, используемый для обслуживания запросов для сайта. Он может использоваться в качестве обратного прокси, почтового прокси, -кэша или балансировщика нагрузки. Nginx – это бесплатное программное обеспечение с открытым исходным кодом, которое можно настроить с помощью -модуля -fpm и улучшить загрузку сайта и обработать огромное количество трафика.
Настройка -fpm с Nginx на Ubuntu 22.04 – это очень простой и понятный процесс, который может занять до 15 минут. Давайте начнем!
Шаг 1. Обновление системы
Свежая установка Ubuntu 22.04 нуждается в обновлении системы, поэтому нам необходимо выполнить следующие команды.
sudo apt update -y && sudo apt upgrade -y
Шаг 2. Установите веб-сервер Nginx
Веб-сервер Nginx можно установить с помощью следующей команды:
sudo apt install nginx -y
После завершения установки запустите и включите службу Nginx:
sudo systemctl start nginx && sudo systemctl enable nginx
Шаг 3. Установка —
Следующим шагом будет установка расширения php-fpm вместе с другими расширениями php.
sudo apt install software-properties-common ca-certificates lsb-release apt-transport-https -y LC_ALL=C. UTF-8 add-apt-repository ppa:ondrej/php sudo apt update
После установки зависимостей мы готовы к установке -.
sudo apt install php8.1 php8.1-fpm php8.1-mysql php8.1-mbstring php8.1-xml php8.1-curl
После установки запустите и включите php8.1-fpm.service
sudo systemctl start php8.1-fpm.service && sudo systemctl enable php8.1-fpm.service
Чтобы проверить, все ли в порядке, выполните следующую команду:
sudo systemctl status php8.1-fpm.service
Вы должны получить следующее сообщение:
● php8.1-fpm.service - The PHP 8.1 FastCGI Process Manager Loaded: загружен (/lib/systemd/system/php8.1-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-09-10 15:31:29 CEST; 1min 52s ago Docs: man:php-fpm8.1Main PID: 16869 (php-fpm8.1) Status: "Процессы активны: 0, простаивают: 2, Запросы: 0, медленный: 0, Трафик: 0req/sec" Задачи: 3 (limit: 4575) Memory: 8.9M CPU: 482ms CGroup: /system.slice/php8.1-fpm.serviceШаг 4. Настройка - с Nginx
Мы должны создать файл виртуального хоста нашего доменного имени. Зайдите в каталог конфигурации Nginx и создайте файл.
cd /etc/nginx/conf.d/ && sudo nano yourdomain.com.confВставьте следующие строчки кода.
server { listen 80; server_name yourdomain.com; root /var/www/html/; access_log /var/log/nginx/yourdomain.com-access.log; error_log /var/log/nginx/yourdomain.com-error.log error; index index.html index.htm index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ .php$ { fastcgi_split_path_info ^(. .php)(/. )$; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; fastcgi_index index.php; include fastcgi.conf; } }Проверьте синтаксис конфигурации Nginx, чтобы убедиться, что он в порядке.
nginx -tВы должны получить следующий результат:
root@vps:/etc/nginx/conf.d# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successfulПерезапустите службу Nginx.
sudo systemctl restart nginxДалее необходимо создать пользовательский пул в конфигурации PHP8.1-. Расположение конфигураций пула – * /etc/php/8.1/fpm/pool.d* Конфигурация пула по умолчанию – www.conf
, но мы не будем вносить изменения в этот файл, поскольку рекомендуется использовать отдельные файлы для каждой новой конфигурации и сайта.Сначала нам нужно создать группу и пользователя, затем добавить пользователя в группу
groupadd php_fpm_group useradd -g php_fpm_group php_fpm_userСледующее, нам нужно создать конфигурацию пула для сайта.
cd /etc/php/8.1/fpm/pool.d && touch yourdomain.confОткройте файл yourdomain.conf
вашим любимым редактором и вставьте следующие строки кода:[имя_пула] user = php_fpm_user group = php_fpm_group listen = /var/run/php/php8.1-fpm.sock listen.owner = www-data listen.group = www-data pm = dynamic pm.max_children = 30 pm.start_servers = 5 pm.process_idle_timeout = 20sПоясним параметры в созданном выше файле:
- pm.max_children
предназначен для установки максимального количества потомков, которые могут быть запущены одновременно. - pm.start_servers
– количество дочерних серверов, создаваемых при запуске. - pm.process_idle_timeout
используется только в том случае, если pm
установлен в значение dynamic и представляет собой число желаемых максимальных незанятых серверных процессов. Значение pm=dynamic
означает, что количество дочерних процессов устанавливается динамически на основе следующих директив.
Помните, что эта конфигурация может быть другой в зависимости от ресурсов вашего сервера и потребностей сайта.
Последним шагом будет создание файла phpinfo.php
в корневой директории вашего сайта.
cd /var/www/html/ && sudo nano phpinfo.php
Открыв файл, вставьте следующие строки кода:
<? php phpinfo(); ?>
Сохраните файл, закройте его и откройте следующий : http://yourdomain.com/phpinfo.php
На этом все.
Эксперт по Linux и Windows
Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.