Linux как установить php

Как установить PHP 8.2 на Ubuntu 22.04 с Nginx или Apache

В этой статье мы рассмотрим этапы установки PHP 8.2 на Ubuntu 22.04|20.04|18.04. Версия PHP по умолчанию, доступная в репозиториях ОС, обычно старше последних официальных выпусков PHP. Репозитории программного обеспечения PPA (Personal Package Archive) для PHP позволяют вам устанавливать более новые версии PHP в вашей системе Ubuntu, которые недоступны в официальных репозиториях дистрибутива Linux.

Шаг 1: Обновите систему Ubuntu#

Проверьте наличие обновлений и установите их, прежде чем выполнять какие-либо другие действия.

sudo apt update && sudo apt -y upgrade 

Очистите кеш APT после обновления.

Проверьте, требуется ли перезагрузка, и действуйте соответствующим образом.

[ -f /var/run/reboot-required ] && sudo reboot -f 

Сведения о выпуске ОС можно проверить с помощью приведенных здесь команд.

$ cat /etc/os-release PRETTY_NAME="Ubuntu 22.04.1 LTS" NAME="Ubuntu" VERSION_ID="22.04" VERSION="22.04.1 LTS (Jammy Jellyfish)" VERSION_CODENAME=jammy ID=ubuntu ID_LIKE=debian HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" UBUNTU_CODENAME=jammy 

Шаг 2: Добавьте репозиторий Surý PHP APT#

Чтобы установить пакеты PHP 8.2 в Ubuntu, мы будем использовать PHP PPA Ондржея Сури, который предоставляет последние стабильные версии PHP для систем Ubuntu и Debian.

Установите несколько пакетов зависимостей перед добавлением репо.

sudo apt update sudo apt install -y lsb-release gnupg2 ca-certificates apt-transport-https software-properties-common 

Выполните следующие команды в своем терминале, чтобы добавить Surý PPA в вашу систему.

sudo add-apt-repository ppa:ondrej/php 

Ожидается успешное выполнение команды.

PPA publishes dbgsym, you may need to include 'main/debug' component Repository: 'deb https://ppa.launchpadcontent.net/ondrej/php/ubuntu/ jammy main' Description: Co-installable PHP versions: PHP 5.6, PHP 7.x and most requested extensions are included. Only Supported Versions of PHP (http://php.net/supported-versions.php) for Supported Ubuntu Releases (https://wiki.ubuntu.com/Releases) are provided. Don't ask for end-of-life PHP versions or Ubuntu release, they won't be provided. Debian oldstable and stable packages are provided as well: https://deb.sury.org/#debian-dpa You can get more information about the packages at https://deb.sury.org IMPORTANT: The -backports is now required on older Ubuntu releases. BUGS&FEATURES: This PPA now has a issue tracker: https://deb.sury.org/#bug-reporting CAVEATS: 1. If you are using php-gearman, you need to add ppa:ondrej/pkg-gearman 2. If you are using apache2, you are advised to add ppa:ondrej/apache2 3. If you are using nginx, you are advised to add ppa:ondrej/nginx-mainline or ppa:ondrej/nginx PLEASE READ: If you like my work and want to give me a little motivation, please consider donating regularly: https://donate.sury.org/ WARNING: add-apt-repository is broken with non-UTF-8 locales, see https://github.com/oerdnj/deb.sury.org/issues/56 for workaround: # LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php More info: https://launchpad.net/~ondrej/+archive/ubuntu/php Adding repository. Press [ENTER] to continue or Ctrl-c to cancel. Adding deb entry to /etc/apt/sources.list.d/ondrej-ubuntu-php-jammy.list Adding disabled deb-src entry to /etc/apt/sources.list.d/ondrej-ubuntu-php-jammy.list Adding key to /etc/apt/trusted.gpg.d/ondrej-ubuntu-php.gpg with fingerprint 14AA40EC0831756756D7F66C4F4EA0AAE5267A6C Hit:1 https://mirror.hetzner.com/ubuntu/packages jammy InRelease Hit:2 https://mirror.hetzner.com/ubuntu/packages jammy-updates InRelease Hit:3 https://mirror.hetzner.com/ubuntu/packages jammy-backports InRelease Hit:4 https://mirror.hetzner.com/ubuntu/security jammy-security InRelease Get:5 https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy InRelease [23.9 kB] Get:6 https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy/main amd64 Packages [108 kB] Get:7 https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy/main Translation-en [33.3 kB] Fetched 166 kB in 1s (120 kB/s) Reading package lists. Done 

Вы можете вручную подтвердить, работает ли репозиторий, выполнив команду apt update.

$ sudo apt update Hit:1 https://mirror.hetzner.com/ubuntu/packages jammy InRelease Hit:2 https://mirror.hetzner.com/ubuntu/packages jammy-updates InRelease Hit:3 https://mirror.hetzner.com/ubuntu/packages jammy-backports InRelease Hit:4 https://mirror.hetzner.com/ubuntu/security jammy-security InRelease Hit:5 https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy InRelease Reading package lists. Done Building dependency tree. Done Reading state information. Done 

Шаг 3: Установите PHP 8.2 на Ubuntu 22.04/20.04/18.04#

После добавления PPA используйте команду apt для установки PHP 8.2 и любых других связанных модулей PHP на сервере Ubuntu.

Читайте также:  How to check ssd health linux

Примите установку пакета в соответствии с запросом через приглашение.

The following additional packages will be installed: apache2 apache2-bin apache2-data apache2-utils bzip2 file libapache2-mod-php8.2 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.3-0 mailcap mime-support php-common php8.2-cli php8.2-common php8.2-opcache php8.2-readline ssl-cert Suggested packages: apache2-doc apache2-suexec-pristine | apache2-suexec-custom www-browser bzip2-doc php-pear The following NEW packages will be installed: apache2 apache2-bin apache2-data apache2-utils bzip2 file libapache2-mod-php8.2 libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.3-0 mailcap mime-support php-common php8.2 php8.2-cli php8.2-common php8.2-opcache php8.2-readline ssl-cert 0 upgraded, 21 newly installed, 0 to remove and 2 not upgraded. Need to get 6,990 kB of archives. After this operation, 29.8 MB of additional disk space will be used. Do you want to continue? [Y/n] y 

Чтобы проверить версию PHP, установленную в настоящее время в системе, выполните следующую команду:

Шаг 4: Установите модули PHP 8.2 в Ubuntu#

Модули PHP — это программные библиотеки, созданные для расширения функциональности PHP. Эти модули обычно написаны на C, и вы можете динамически загружать их в PHP или компилировать как общие объекты.

Если вы хотите установить модули PHP 8.2 в системе Ubuntu, используйте диспетчер пакетов apt с приведенным здесь синтаксисом команды:

В этом примере мы устанавливаем модуль fpm PHP 8.2 из добавленного ранее PPA.

$ sudo apt install php8.2-fpm Reading package lists. Done Building dependency tree. Done Reading state information. Done Suggested packages: php-pear The following NEW packages will be installed: php8.2-fpm 0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded. Need to get 1,886 kB of archives. After this operation, 5,756 kB of additional disk space will be used. Get:1 https://ppa.launchpadcontent.net/ondrej/php/ubuntu jammy/main amd64 php8.2-fpm amd64 8.2.1-2+ubuntu22.04.1+deb.sury.org+1 [1,886 kB] Fetched 1,886 kB in 0s (5,211 kB/s) Selecting previously unselected package php8.2-fpm. (Reading database . 56412 files and directories currently installed.) Preparing to unpack . /php8.2-fpm_8.2.1-2+ubuntu22.04.1+deb.sury.org+1_amd64.deb . Unpacking php8.2-fpm (8.2.1-2+ubuntu22.04.1+deb.sury.org+1) . Setting up php8.2-fpm (8.2.1-2+ubuntu22.04.1+deb.sury.org+1) . . 

Установка часто используемых модулей.

Читайте также:  Linux тип исполняемого файла

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

$ php -m [PHP Modules] bcmath bz2 calendar Core ctype curl date dom exif FFI fileinfo filter ftp gd gettext hash iconv intl json ldap libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_pgsql pgsql Phar posix readline Reflection session shmop SimpleXML soap sockets sodium SPL standard sysvmsg sysvsem sysvshm tokenizer xml xmlreader xmlwriter xsl Zend OPcache zip zlib [Zend Modules] Zend OPcache 

Шаг 5: Использование PHP с веб-сервером Nginx/Apache#

Мы рассмотрим конфигурации веб-серверов Nginx и Apache для размещения вашего PHP-приложения.

Размещение PHP-приложения на веб-сервере Nginx

В Nginx код PHP обычно выполняется отдельным процессом, например PHP-FPM (FastCGI Process Manager). PHP-FPM — это демон, который прослушивает входящие запросы PHP и запускает их в отдельном процессе. Nginx просто перенаправляет входящие запросы в PHP-FPM, где они выполняются.

Установите веб-сервер Nginx и расширение FPM.

sudo apt install nginx php8.2-fpm 

Откройте конфигурацию вашего сервера Nginx и добавьте следующий блок в блок http , чтобы настроить PHP-запросы, которые будут пересылаться для выполнения PHP-FPM:

$ sudo vim /etc/nginx/nginx.conf server < listen 80; server_name mysite.example.com; root /var/www/mysite; index index.php index.html; location ~ \.php$ < include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.2-fpm.sock; >> 

Подтвердите, что конфигурация Nginx в порядке.

$ sudo nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful 

Размещение PHP-приложения на веб-сервере Apache

В Apache мы можем использовать встроенный модуль mod_php для обработки PHP-кода непосредственно в процессе Apache.

Но сначала вам нужно установить пакет веб-сервера Apache, PHP и расширение Apache PHP:

sudo apt install apache2 libapache2-mod-php8.2 

Перезапустите веб-сервер Apache после настройки.

sudo systemctl restart apache2 

Подведение итогов#

В заключение, установка PHP 8.2 в системе Ubuntu 22.04/20.04/18.04 Linux — это простой процесс. Мы начали с добавления PHP PPA Ондржея Сурого в исходники пакетов системы, что позволило нам установить PHP 8.2 и другие модули. Добавление стороннего PPA к рабочему серверу может привести к риску стабильности и безопасности, и их всегда следует использовать с осторожностью. Если вы выполняете обновление PHP, рассмотрите возможность резервного копирования важных файлов перед обновлением вашей системы на случай, если что-то пойдет не так в процессе обновления.

Если вам понравился этот пост о том, как установить PHP 8.2 на Ubuntu 22.04, поделитесь им с друзьями в социальных сетях. Спасибо.

Читайте также:  Создать образ линукс минт

Источник

How to install and configure PHP

PHP is a general-purpose scripting language well-suited for Web development since PHP scripts can be embedded into HTML. This guide explains how to install and configure PHP in an Ubuntu System with Apache2 and MySQL.

Prerequisites

Before installing PHP you should install Apache (or a preferred web server) and a database service such as MySQL.

  • To install the Apache package, please refer to our Apache guide.
  • To install and configure a MySQL database service, refer to our MySQL guide.

Install PHP

PHP is available on Ubuntu Linux, but unlike Python (which comes pre-installed), must be manually installed.

To install PHP – and the Apache PHP module – you can enter the following command into a terminal prompt:

sudo apt install php libapache2-mod-php 

Install optional packages

The following packages are optional, and can be installed if you need them for your setup.

    PHP-CLI
    You can run PHP scripts via the Command Line Interface (CLI). To do this, you must first install the php-cli package. You can install it by running the following command:

sudo apt install php-mysql 
sudo apt install php-pgsql 

Configure PHP

If you have installed the libapache2-mod-php or php-cgi packages, you can run PHP scripts from your web browser. If you have installed the php-cli package, you can run PHP scripts at a terminal prompt.

By default, when libapache2-mod-php is installed, the Apache2 web server is configured to run PHP scripts using this module. First, verify if the files /etc/apache2/mods-enabled/php8.*.conf and /etc/apache2/mods-enabled/php8.*.load exist. If they do not exist, you can enable the module using the a2enmod command.

Once you have installed the PHP-related packages and enabled the Apache PHP module, you should restart the Apache2 web server to run PHP scripts, by running the following command:

sudo systemctl restart apache2.service 

Test your setup

To verify your installation, you can run the following PHP phpinfo script:

You can save the content in a file – phpinfo.php for example – and place it under the DocumentRoot directory of the Apache2 web server. Pointing your browser to http://hostname/phpinfo.php will display the values of various PHP configuration parameters.

Further reading

  • For more in depth information see the php.net documentation.
  • There are a plethora of books on PHP 7 and PHP 8. A good book from O’Reilly is Learning PHP, which includes an exploration of PHP 7’s enhancements to the language.
  • Also, see the Apache MySQL PHP Ubuntu Wiki page for more information.

Источник

Оцените статью
Adblock
detector