Стек LEMP предназначен для развертывания веб-приложений написанных с использование распространенных фреймворков (Laravel, Yii, CodeIgniter, Symfony, CakePHP, Zend, Phalcon и т.п.).
В этой статье я попробовал собрать пошаговую инструкцию с исправлением возможных встречающихся проблем.
Для примера установки и настройки будет использована ОС Ubuntu 22.04, MySQL8, PHP8.1.
- Подготовка ОС
sudo apt install -f vim htop ssh curl ubuntu-restricted-extras openssh-server ca-certificates tzdata;
sudo add-apt-repository ppa:git-core/ppa; sudo apt install -f git; git config --global pull.rebase false; git branch -m master main;
sudo snap install core; sudo snap refresh core;
- Установка и настройка веб-сервера Nginx
sudo apt install -f nginx
- Установка и настройка MySQL
https://dev.mysql.com/downloads/repo/apt/sudo apt install -f mysql-client mysql-server;
sudo snap install mysql-workbench-community;
- Установка PHP
sudo apt install -f php8.1 php8.1-cli php8.1-common php8.1-curl php8.1-dev php8.1-fpm php8.1-gd php8.1-intl php8.1-json php8.1-mbstring php8.1-mysql php8.1-opcache php8.1-readline php8.1-soap php8.1-xml php8.1-zip php8.1-xdebug php8.1-imagick php8.1-gmp;
- Настройка PHP и расширений
sudo vim /etc/php/8.1/fpm/php.ini
short_tags On upload_max_filesize = 25M post_max_size = 25M
sudo systemctl restart php8.1-fpm
- Настройка обработчика PHP
sudo add-apt-repository ppa:ondrej/php;
sudo apt install -f php7.4 php7.4-cli php7.4-common php7.4-curl php7.4-dev php7.4-fpm php7.4-gd php7.4-intl php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-readline php7.4-soap php7.4-xml php7.4-zip php7.4-xdebug php7.4-imagick php7.4-gmp;
sudo update-alternatives --set php /usr/bin/php7.4;
- Дополнительные инструменты
- Composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"; php composer-setup.php; sudo mv composer.phar /usr/local/bin/composer;
- Composer