PHP: Инструкции по установке на Debian GNU/Linux
Change language: EnglishBrazilian PortugueseChinese (Simplified)FrenchGermanJapaneseRussianSpanishTurkishOther
Submit a Pull Request Report a Bug
Раздел содержит информацию и подсказки, относящиеся к установке PHP на » Debian GNU/Linux.
Внимание
Неофициальные сборки от третьих лиц не поддерживаются. О любых ошибках следует сообщать разработчикам Debian, но перед этим стоит проверить, возможно они уже исправлены в новых релизах, которые можно скачать на » странице загрузки.
Хотя и существует универсальная инструкция по установке PHP на Unix/Linux,
в этом разделе мы рассмотрим особенности специфичные для Debian,
такие как использование команд apt
или aptitude
.
В рамках этого руководства обе эти команды рассматриваются как взаимозаменяемые.
Использование APT
Во первых, обратите внимание на то, что некоторые пакеты связаны:
libapache-mod-php
нужен для интеграции с Apache 2, и php-pear
с PEAR.
Во-вторых, перед установкой убедитесь, что список пакетов находится в актуальном состоянии. Как правило, это делается с помощью команды apt update.
Пример #1 Пример установки Apache 2 на Debian
# apt install php-common libapache2-mod-php php-cli
APT автоматически установит модуль PHP для Apache 2 и все их зависимости и, затем, активирует их. Apache должен быть перезапущен для того, чтобы изменения вступили в силу. Например:
Пример #2 Остановка и запуск Apache после установки PHP
# /etc/init.d/apache2 stop # /etc/init.d/apache2 start
Контроль конфигурации
Изначально, PHP устанавливается только с основными модулями ядра.
Если вы хотите установить дополнительные модули, такие как
MySQL,
cURL,
GD и т.д., это также можно сделать с помощью
команды apt
.
Пример #3 Способы получить список дополнительных пакетов PHP
# apt-cache search php # apt search php | grep -i mysql # aptitude search php
Будет выведен список большого числа пакетов, включая несколько
специфичных, таких как php-cgi, php-cli and php-dev.
apt-get
или aptitude
.
И, так как Debian производит проверку зависимостей, вам будет выведен запрос
на их установку.Пример #4 Установка PHP с MySQL и cURL
# apt install php-mysql php-curl
APT автоматически добавит необходимые строки в соответствующие php.ini, /etc/php/7.4/php.ini, /etc/php/7.4/conf.d/*.ini, и т.д. В зависимости от модуля, будут
внесены записи типа extension=foo.so
.
В любом случае, чтобы эти изменения вступили в силу, необходимо будет перезапустить
сервер веб-сервер.
Стандартные проблемы
- Если скрипты PHP не разбираются веб-сервером, то скорее всего это означает,
что PHP не был добавлен в конфигурацию веб-сервера. На Debian это
обычно /etc/apache2/apache2.conf или похожий.
Смотрите документацию Debian для выяснения подробностей.
- Модуль, по-видимому, установлен, а его функции всё равно не распознаются. В таком случае убедитесь, что соответствующий ini-файл был загружен и/или веб-сервер был перезагружен после установки модуля.
- Для установки пакетов в Debian существуют две основных команды (не считая стандартных
вариантов Linux):
иaptitude
. Объяснения их синтаксиса, особенностей и отличий друг от друга выходит за рамки данного руководства.
+add a note
User Contributed Notes 6 notes
up
down
61
thumbs at apache dot org ¶
9 years ago
To refresh this document, perhaps it would be worth mentioning more modern methods to serve php content under apache httpd.
Specifically, the preferred method is now fastcgi, using either of those recipes:
(mod_fastcgi, httpd 2.
2)
http://wiki.apache.org/httpd/php-fastcgi(mod_fcgid, httpd 2.2)
http://wiki.apache.org/httpd/php-fcgid
(mod_proxy_fcgi, httpd 2.4)
http://wiki.apache.org/httpd/PHP-FPM
While the legacy mod_php approach is still applicable for some older installations, the fastcgi method is much faster, and require much less RAM to operate, based on similar traffic patterns.
Thank you!
up
down
38
kearney dot taaffe at gmail dot com ¶
4 years ago
Compiling PHP on Ubuntu boxes.
If you would like to compile PHP from source as opposed to relying on package maintainers, here's a list of packages, and commands you can runSTEP 1:
sudo apt-get install autoconf build-essential curl libtool \
libssl-dev libcurl4-openssl-dev libxml2-dev libreadline7 \
libreadline-dev libzip-dev libzip4 nginx openssl \
pkg-config zlib1g-dev
So you don't overwrite any existing PHP installs on your system, install PHP in your home directory.
Create a directory for the PHP binaries to live
mkdir -p ~/bin/php7-latest/
STEP 2:
# download the latest PHP tarball, decompress it, then cd to the new directory.
STEP 3:
Configure PHP. Remove any options you don't need (like MySQL or Postgres (--with-pdo-pgsql))
./configure --prefix=$HOME/bin/php-latest \
--enable-mysqlnd \
--with-pdo-mysql \
--with-pdo-mysql=mysqlnd \
--with-pdo-pgsql=/usr/bin/pg_config \
--enable-bcmath \
--enable-fpm \
--with-fpm-user=www-data \
--with-fpm-group=www-data \
--enable-mbstring \
--enable-phpdbg \
--enable-shmop \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-zip \
--with-libzip=/usr/lib/x86_64-linux-gnu \
--with-zlib \
--with-curl \
--with-pear \
--with-openssl \
--enable-pcntl \
--with-readlineSTEP 4:
compile the binaries by typing: make
If no errors, install by typing: make install
STEP 5:
Copy the PHP.
ini file to the install directory
cp php.ini-development ~/bin/php-latest/lib/
STEP 6:
cd ~/bin/php-latest/etc;
mv php-fpm.conf.default php-fpm.conf
mv php-fpm.d/www.conf.default php-fpm.d/www.conf
STEP 7:
create symbolic links for your for your binary files
cd ~/bin
ln -s php-latest/bin/php php
ln -s php-latest/bin/php-cgi php-cgi
ln -s php-latest/bin/php-config php-config
ln -s php-latest/bin/phpize phpize
ln -s php-latest/bin/phar.phar phar
ln -s php-latest/bin/pear pear
ln -s php-latest/bin/phpdbg phpdbg
ln -s php-latest/sbin/php-fpm php-fpm
STEP 8: link your local PHP to the php command. You will need to logout then log back in for php to switch to the local version instead of the installed version
# add this to .bashrc
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
STEP 9: Start PHP-FPM
sudo ~/bin/php7/sbin/php-fpm
up
down
-16
marin at sagovac dot com ¶
8 years ago
To install LAMP stack on Ubuntu (+Server) from 10.
04 you need first install taskel and then lamp-server for example:
Install taskel, follow terminal guides:
sudo apt-get install tasksel
Install LAMP stack package from Ubuntu repository:
sudo tasksel install lamp-server
up
down
-24
13 years ago
On Ubuntu (since 7.04), rather do:
sudo tasksel install lamp-server
Details:
https://help.ubuntu.com/community/ApacheMySQLPHP
up
down
-27
John Fisher ¶
15 years ago
With Apache2 and Php4 under Debian Sarge there is an extra configuration file : /etc/apache2/sites-available/default
This file is not clearly documented, at least not for noobs, in Apache docs.
It overrides the conf file in the way you expect the /etc/apache2/conf.
d/apache2-doc to do according to the README.Add ExecCGI to it to get rid of "Options ExecCGI is off in this directory" errors.
up
down
-41
tranzbit at yahoo dot com ¶
13 years ago
On Ubuntu:
sudo apt-get install apache2 php5 mysql-client-5.0 mysql-server-5.0 phpmyadmin libapache2-mod-php5 libapache2-mod-auth-mysql php5-mysql
then restart the computer/start mysql manually
From:
http://ubuntuforums.org/showthread.php?t=186492
+add a note
Как установить PHP 8.1 на Ubuntu 22.04 LTS
PHP 8.1 — это значительное обновление языка PHP, которое было «официально» выпущено 25 ноября 2021 года. Это стандартное обновление по сравнению с существующей версией PHP 8.0. Новый PHP 8.1 включает в себя перечисления, волокна, никогда не возвращаемый тип, конечные константы класса, типы пересечения и свойства только для чтения, среди новых функций и изменений.
В следующем руководстве вы узнаете, как импортировать PPA Ondřej Surý и установить PHP 8.1 на Ubuntu 22.04 LTS Jammy Jellyfish с помощью терминала командной строки.
Содержание
1
Обновление системы
Прежде чем начать, убедитесь, что ваша система обновлена, чтобы избежать конфликтов во время установки PHP.
sudo apt update && sudo apt upgrade -y
Установить зависимости
Следующие зависимости должны быть установлены для успешной установки PHP. Большинство этих пакетов уже присутствуют в вашей системе, но запуск команды может помочь убедиться, что они установлены.
sudo apt install software-properties-common apt-transport-https -y
Импорт Ondřej Surý PHP PPA
Чтобы успешно установить PHP 8.1, вам нужно будет импортировать хорошо известный PPA из Ондржей Суры, ведущий разработчик PHP и Debian, а также поддерживает пакеты Ubuntu и Debian.
Используйте следующую команду для автоматического импорта PPA.
sudo add-apt-repository ppa:ondrej/php -y
После этого полезно обновить ваши репозитории APT, так как PPA может принести дополнительные обновления для существующих зависимостей.
sudo apt update
Затем обновите все необходимые пакеты.
sudo apt upgrade
Установите PHP 8.1 с опцией Apache
Если вы запустите HTTP-сервер Apache, ты можешь запустить PHP как модуль Apache or PHP-FPM.
Установить модуль Apache
Чтобы установить PHP 8 как модуль Apache, введите следующую команду.
sudo apt install php8.1 libapache2-mod-php8.1
После завершения установки перезапустите сервер Apache, чтобы загрузить новый модуль PHP.
sudo systemctl restart apache2
Установите Apache с PHP-FPM
PHP-FPM (аббревиатура FastCGI Process Manager) чрезвычайно популярная альтернатива PHP (Обработчик гипертекста) Реализация FastCGI.
Чтобы установить PHP-FPM, используйте следующие команды.
sudo apt install php8.1-fpm libapache2-mod-fcgid
Обратите внимание, что по умолчанию PHP-FPM не включен для Apache. Вы должны включить его с помощью следующей команды.
sudo a2enmod proxy_fcgi setenvif && sudo a2enconf php8.1-fpm
Наконец, перезапустите Apache.
sudo systemctl restart apache2
Убедитесь, что PHP-FPM работает:
systemctl status php8.1-fpm
Пример вывода:
В качестве напоминания, чтобы узнать, какая версия PHP 8.1 установлена в вашей системе, используйте следующую команду.
php --version
Пример вывода:
Установите PHP 8.1 с опцией Nginx
Nginx не содержит встроенной обработки PHP, как другие веб-серверы, такие как Apache. Вам нужно будет установить PHP-FPM «Менеджер процессов fastCGI» для обработки файлов PHP.
Сначала проверьте наличие обновлений в вашей системе и установите PHP-FPM, изначально установив необходимые пакеты PHP.
В вашем терминале используйте следующую команду для установки PHP 8.1 и PHP 8.1-FPM.
sudo apt install php8.1 php8.1-fpm php8.1-cli
После установки служба PHP-FPM запускается автоматически, и вы можете проверить статус, чтобы убедиться, что он работает нормально.
systemctl status php8.1-fpm
Пример вывода:
Вам нужно будет отредактировать блок сервера Nginx и добавить приведенный ниже пример для Nginx для обработки файлов PHP.
Ниже приведен пример для всех серверных блоков, обрабатывающих PHP-файлы, которым требуется расположение ~ .php $ добавлен.
server {
# … some other code
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-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
Перезапустите службу Nginx для завершения установки.
sudo systemctl restart nginx
В качестве напоминания, чтобы узнать, какая версия PHP 8.1 установлена в вашей системе, используйте следующую команду.
php --version
Пример вывода:
Дополнительные дополнительные расширения PHP 8.1
Хотя большинство предпочло бы установить PHP самостоятельно и знать, какие пакеты устанавливать, ниже приведены примеры команд, которые можно комбинировать или модифицировать.
Во-первых, вы можете выбрать, какие модули из следующей команды установить расширения, которые вам нужны, что автоматически активирует их с вашей установкой PHP.
sudo apt install php8.1-cli php8.1-curl php8.1-mysqlnd php8.
1-gd php8.1-opcache php8.1-zip php8.1-intl php8.1-common php8.1-bcmath php8.1-imap php8.1-imagick php8.1-xmlrpc php8.1-readline php8.1-memcached php8.1-redis php8.1-mbstring php8.1-apcu php8.1-xml php8.1-dom php8.1-redis php8.1-memcached php8.1-memcache
Обратите внимание: удалите ненужные параметры, это необязательно. Настоятельно рекомендуется устанавливать и сохранять только те модули, которые вам требуются в соответствии со стандартами производительности и безопасности.
Чтобы просмотреть модули, загруженные в любое время, вы можете использовать следующую команду.
php -m
Пример вывода:
В зависимости от того, сколько модулей вы установили, это может быть довольно большим, и всегда рекомендуется следить за этим и удалять все, что вам не нужно.
Наконец, используйте следующую команду для всех, кто заинтересован в установке ветки разработки.
sudo apt install php8.1-dev
Дополнительные средства разработки, такие как средства отладки, используют следующую команду.
sudo apt install php8.1-xdebug php8.1-pcov
Это установит множество зависимостей, и если вы не разрабатываете с помощью PHP или не имеете каких-либо особых требований для его установки, не используйте эту версию.
В этом руководстве вы узнали, как установить PHP 8.1 и настроить его использование с Apache и Nginx. PHP 8.1 захватывающий. Однако в настоящий момент он все еще выходит из бета-версии и не считается стабильным, например, 8.0 или старая стабильная версия 7.4, поэтому будьте осторожны, вы можете обнаружить, что многие из ваших любимых программ, таких как WordPress или плагины/темы для программного обеспечения CMS, могут конфликт, пока разработчики не смогут обновить.
Проведите небольшое исследование, подготовьтесь и установите PHP 7.4 или 8.0, готовые к замене, если при переключении что-то пойдет не так. Стабильные версии, такие как 8.0, все еще активно разрабатываются, и пакеты продвигаются одновременно с пакетами 8.1.
Установка Apache и PHP 7.

Сегодня мы расскажем, как установить Apache HTTP Server (httpd) с PHP 7.1.2 и дополнительными модулями в такие операционные системы как: Fedora 25/24/23, CentOS 7.3/6.8 и Red Hat (RHEL) 7.3/6.8.
OPcache (php-opcache) – Zend OPcache обеспечивает более быстрое выполнение PHP.
APCu (php-pecl-apcu) – кеширование APCu
CLI (php-cli) – интерфес командной строки для PHP
PEAR (php-pear) – инфраструктура расширения PHP
PDO (php-pdo) — модуль абстрагирования доступа к базе данных для приложений PHP
MySQL (php-mysqlnd) — модуль для PHP-приложений, использующих базы данных MySQL
PostgreSQL (php-pgsql) — Модуль базы данных PostgreSQL для PHP
MongoDB (php-pecl-mongodb) — Драйвер базы данных PHP MongoDB
Redis (php-pecl-redis) — Расширение для связи с хранилищем ключей и значений Redis
Memcache (php-pecl-memcache) — расширение для работы с демонами кэширования Memcached
Memcached (php-pecl-memcached) — расширение для работы с демонами кэширования Memcached
GD (php-gd) — модуль для PHP-приложений для использования библиотеки графики gd
XML (php-xml) — модуль для PHP-приложений, которые используют XML
MBString (php-mbstring) — модуль для PHP-приложений, которым требуется многобайтная обработка строк
MCrypt (php-mcrypt) — Стандартный модуль PHP обеспечивает поддержку библиотеки mcrypt
Установка Apache HTTP Server (httpd) и PHP 7.

1. Авторизуемся под root пользователем
su -
## или ##
sudo -i
2. Установим Remi репозиторий Fedora
## Remi Dependency on Fedora 25 / 24 / 23 ##
rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
## Fedora 25 ##
rpm -Uvh http://rpms.famillecollet.com/fedora/remi-release-25.rpm
## Fedora 24 ##
rpm -Uvh http://rpms.famillecollet.com/fedora/remi-release-24.rpm
## Fedora 23 ##
rpm -Uvh http://rpms.famillecollet.com/fedora/remi-release-23.rpm
CentOS и Red Hat (RHEL)
## Remi Dependency on CentOS 7 and Red Hat (RHEL) 7 ##
rpm -Uvh https://dl.
fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
## CentOS 7 and Red Hat (RHEL) 7 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
## Remi Dependency on CentOS 6 and Red Hat (RHEL) 6 ##
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
## CentOS 6 and Red Hat (RHEL) 6 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
3. Install Apache (httpd) Web server and PHP 7.1.2
Fedora 25/24/23
dnf --enablerepo=remi --enablerepo=remi-php71 install httpd php php-common
## или ##
dnf --enablerepo=remi --enablerepo=remi-php71 install httpd php php-common --best --allowerasing
CentOS 7.3/6.8 and Red Hat (RHEL) 7.3/6.8
yum --enablerepo=remi,remi-php71 install httpd php php-common
4. Установим модули PHP 7.1.2
Выберем необходимые модули: OPcache, APCu, CLI, PEAR, PDO, MySQL, PostgreSQL, MongoDB, Memcache, Memcached, GD, MBString, MCrypt, XML
Fedora 25/24/23
dnf --enablerepo=remi --enablerepo=remi-php71 install php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml
CentOS 7.3/6.8 и Red Hat (RHEL) 7.3/6.8
yum --enablerepo=remi,remi-php71 install php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml
5. Запустим Apache HTTP server (httpd) и добавим его в атозапуск
## Fedora 25/24/23 and CentOS/RHEL 7.3 ##
systemctl start httpd.service ##
## CentOS / RHEL 6.8 ##
/etc/init.d/httpd start ##
## или ##
service httpd start ##
## Fedora 25/24/23 и CentOS/RHEL 7.
3 ##
systemctl enable httpd.service
## CentOS / RHEL 6.8 ##
chkconfig --levels 235 httpd on
6. Создадим тестовые файл PHP и проверим корректность работы php и установленных модулей.
Создадим файл /var/www/html/hoster.php
и добавим в него код:
7. Проверим работу скрипта
Откроем страницу http://localhost/hoster.php в браузере CentOS 7 running Apache and PHP 5.6.0
Оригинал статьи: https://www.if-not-true-then-false.com/2010/install-apache-php-on-fedora-centos-red-hat-rhel/
Установка — Laravel — PHP Framework для веб-мастеров
- Монтаж
- Требования к серверу
- Установка Ларавела
- Конфигурация
- Конфигурация веб-сервера
- Конфигурация каталога
- Красивые URL
Установка
Требования к серверу
Платформа Laravel имеет несколько системных требований. Всем этим требованиям удовлетворяет виртуальная машина Laravel Homestead, поэтому настоятельно рекомендуется использовать Homestead в качестве локальной среды разработки Laravel.
Однако, если вы не используете Homestead, вам необходимо убедиться, что ваш сервер соответствует следующим требованиям:
- PHP >= 7.2.5
- PHP-расширение BCMath
- Ctype Расширение PHP
- Fileinfo Расширение PHP
- JSON PHP-расширение
- Mbstring Расширение PHP
- PHP-расширение OpenSSL
- PHP-расширение PDO
- Расширение PHP для токенизатора
- XML-расширение PHP
Установка Laravel
Laravel использует Composer для управления своими зависимостями. Итак, перед использованием Laravel убедитесь, что на вашем компьютере установлен Composer.
Через установщик Laravel
Сначала загрузите установщик Laravel с помощью Composer:
composer global require laravel/installer
Обязательно поместите общесистемный каталог bin поставщика Composer в ваш $PATH
, чтобы исполняемый файл laravel мог быть обнаружен вашей системой. Этот каталог существует в разных местах в зависимости от вашей операционной системы; однако некоторые распространенные местоположения включают:
- macOS:
$HOME/.composer/vendor/bin
- Windows:
%USERPROFILE%\AppData\Roaming\Composer\vendor\bin
- Дистрибутивы GNU/Linux:
$HOME/.config/composer/vendor/bin
или$HOME/.composer/vendor/bin
Вы также можете найти глобальный путь установки композитора, запустив composer global около
и посмотрев вверх с первой строки.
После установки новый Laravel 9Команда 0066 создаст новую установку Laravel в указанном вами каталоге. Например,
laravel new blog
создаст каталог с именем blog
, содержащий новую установку Laravel со всеми уже установленными зависимостями: установите Laravel, выполнив команду Composer create-project
в своем терминале:
97.0 blog Локальный сервер разработки
Если у вас локально установлен PHP и вы хотите использовать встроенный сервер разработки PHP для обслуживания вашего приложения, вы можете использовать Artisan-команду serve
.
Эта команда запустит сервер разработки по адресу http://localhost:8000
:
php artisan serve
Более надежные варианты локальной разработки доступны через Homestead и Valet.
Конфигурация
Общий каталог
После установки Laravel вы должны настроить документ / веб-корень вашего веб-сервера, чтобы он был общедоступным каталогом
. index.php
в этом каталоге служит передним контроллером для всех HTTP-запросов, поступающих в ваше приложение.
Файлы конфигурации
Все файлы конфигурации для платформы Laravel хранятся в каталоге config
. Каждый параметр задокументирован, поэтому не стесняйтесь просматривать файлы и знакомиться с доступными вам параметрами.
Разрешения каталога
После установки Laravel вам может потребоваться настроить некоторые разрешения. Каталоги в каталогах storage
и bootstrap/cache
должны быть доступны для записи вашим веб-сервером, иначе Laravel не запустится.
Если вы используете виртуальную машину Homestead, эти разрешения уже должны быть установлены.
Ключ приложения
Следующее, что вы должны сделать после установки Laravel, это установить для ключа приложения случайную строку. Если вы установили Laravel через Composer или установщик Laravel, этот ключ уже был установлен для вас Ключ ремесленника php: сгенерировать команду
.
Обычно длина этой строки должна составлять 32 символа. Ключ можно установить в файле среды .env
. Если вы еще не скопировали файл .env.example
в новый файл с именем .env
, вам следует сделать это сейчас. Если ключ приложения не установлен, ваши пользовательские сеансы и другие зашифрованные данные не будут защищены!
Дополнительная конфигурация
Laravel практически не нуждается в другой конфигурации из коробки. Вы можете приступить к разработке! Тем не менее, вы можете просмотреть 9Файл 0065 config/app.
и его документация. Он содержит несколько параметров, таких как php
часовой пояс
и языковой стандарт
, которые вы можете изменить в соответствии с вашим приложением.
Вы также можете настроить несколько дополнительных компонентов Laravel, например:
- Кэш
- База данных
- Сессия
Конфигурация веб-сервера
Конфигурация каталога
Laravel всегда должен обслуживаться из корня «веб-каталога», настроенного для вашего веб-сервера. Вы не должны пытаться обслуживать приложение Laravel из подкаталога «веб-каталога». Попытка сделать это может привести к раскрытию конфиденциальных файлов, присутствующих в вашем приложении.
Красивые URL-адреса
Apache
Laravel включает файл public/.htaccess
, который используется для предоставления URL-адресов без переднего контроллера index.php
в пути. Перед обслуживанием Laravel с Apache обязательно включите модуль mod_rewrite
, чтобы файл .
соблюдался сервером. htaccess
Если файл .htaccess
, поставляемый с Laravel, не работает с вашей установкой Apache, попробуйте следующий вариант: 9index.php [L]
Nginx
Если вы используете Nginx, следующая директива в конфигурации вашего сайта будет направлять все запросы на фронт-контроллер index.php
:
location / {
try_files $uri $uri//index.php?$query_string;
}
При использовании Homestead или Valet красивые URL-адреса будут настроены автоматически.
Требуемые настройки PHP | Руководство разработчика Adobe Commerce
В этом разделе обсуждается, как установить необходимые параметры PHP.
См. системные требования для поддерживаемых версий PHP.
Убедитесь, что PHP установлен
В большинстве разновидностей Linux по умолчанию установлен PHP.
В этом разделе предполагается, что вы уже установили PHP. Чтобы убедиться, что PHP уже установлен, в командной строке введите:
1 | php -v |
Если PHP установлен, отображается сообщение, подобное следующему:
1 2 3 | PHP 7.4.0 (cli) (построено: 14 августа 2019 г., 16:42:46) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.1.0, авторское право (c), 1998–2018 гг. Zend Technologies с Zend OPcache v7.1.6, авторское право (c), 1999–2018 гг., Zend Technologies |
Magento 2.4 совместим с PHP 7.3, но мы тестируем и рекомендуем использовать PHP 7.4.
Если PHP не установлен или требуется обновление версии, установите его, следуя инструкциям для вашей конкретной версии Linux. В CentOS могут потребоваться дополнительные шаги.
Проверить установленные расширения
Magento требует установки набора расширений.
Magento с открытым исходным кодом и Adobe Commerce:
- доб-бкмат
- доб-ктип
- завиток
- вн-дом
- ext-fileinfo
- доб-гд
- доб-хеш
- доб-значок
- доб-внутренний
- ext-json
- ext-libxml
- доб-строка
- доб-openssl
- вн-пкре
- доб-pdo_mysql
- доб-симплексмл
- доб-мыло
- внешние розетки
- доб-натрий
- внешний токенизатор
- ext-xmlwriter
- доб-xsl
- доб-zip
- библиотека-libxml
- библиотека-openssl
Дополнительно для Adobe Commerce требуется:
- доб-бкмат
- доб-ктип
- завиток
- вн-дом
- доб-файлинформация
- доб-гд
- доб-хеш
- доб-значок
- доб-внутренний
- ext-json
- ext-libxml
- доб-строка
- доб-опенссл
- вн-пкре
- доб-pdo_mysql
- доб-симплексмл
- доб-мыло
- внешние розетки
- доб-натрий
- доб-спл
- внешний токенизатор
- ext-xmlwriter
- доб-xsl
- доб-zip
- библиотека-libxml
- библиотека-openssl
Для проверки установленных расширений:
Список установленных модулей.
1
php -м
- Убедитесь, что установлены все необходимые расширения.
Добавьте все отсутствующие модули, используя тот же рабочий процесс, что и для установки PHP. Например, если вы используете
yum
для установки PHP, модули PHP 7.4 можно добавить с помощью:1
yum -y установить php74u-pdo php74u-mysqlnd php74u-opcache php74u-xml php74u-gd php74u-devel php74u-mysql php74u-intl php74u-mbstring php74u-bcmath php74u-json php74u
Проверить настройки PHP
Если вы используете PHP 7.4.20, установите pcre.jit=0
в свой php.ini 9файл 0066. Это позволит обойти ошибку PHP, которая препятствует загрузке CSS.
Установка системного часового пояса для PHP; в противном случае такие ошибки, как следующее отображение во время установки, и операции, связанные со временем, такие как cron, могут не работать:
1
Предупреждение PHP: date(): небезопасно полагаться на системные настройки часового пояса.
[следует больше сообщений]
Установите лимит памяти PHP.
Наши подробные рекомендации:
- Компиляция кода или развертывание статических ресурсов,
1G
- Отладка,
2G
- Тестирование,
~3-4G
Увеличьте значения для PHP realpath_cache_size
и realpath_cache_ttl
до рекомендуемых значений:
1
2
realpath_cache_size=10M
realpath_cache_ttl=7200
Эти параметры позволяют процессам PHP кэшировать пути к файлам, а не искать их каждый раз при загрузке страницы. См. Настройка производительности в документации по PHP.
Включить opcache.save_comments
, что требуется для Magento 2.1 и более поздних версий.
Мы рекомендуем включить PHP OPcache из соображений производительности. OPcache включен во многих дистрибутивах PHP.
Magento 2.1 и более поздние версии используют комментарии кода PHP для генерации кода.
Во избежание проблем во время установки и обновления мы настоятельно рекомендуем применять одинаковые параметры PHP как к конфигурации командной строки PHP, так и к конфигурации подключаемого модуля веб-сервера PHP. Дополнительные сведения см. в следующем разделе.
Шаг 1: Найдите файлы конфигурации PHP
В этом разделе обсуждается, как найти файлы конфигурации, необходимые для обновления требуемых параметров.
Найти
файл конфигурации php.ini
Чтобы найти конфигурацию веб-сервера, запустите phpinfo.php
в веб-браузере и найдите загруженный файл конфигурации
следующим образом:
Чтобы найти конфигурацию командной строки PHP, введите
1 | php --ini | grep "Загруженный файл конфигурации" |
Если у вас есть только один файл php.
, внесите изменения в этот файл. Если у вас есть два файла ini
php.ini
, внесите изменения в все файлов. Невыполнение этого требования может привести к непредсказуемой производительности.
Найти параметры конфигурации OPcache
Настройки PHP OPcache обычно находятся либо в php.ini
, либо в opcache.ini
. Расположение может зависеть от вашей операционной системы и версии PHP. Файл конфигурации OPcache может иметь раздел opcache
или такие параметры, как opcache.enable
.
Используйте следующие рекомендации, чтобы найти его:
Веб-сервер Apache:
Для Ubuntu с Apache настройки OPcache обычно находятся в
php.ini
.Для CentOS с Apache или nginx настройки OPcache обычно находятся в
/etc/php.d/opcache.ini
Если нет, используйте следующую команду, чтобы найти его:
1
sudo find / -name 'opcache.
ini'
веб-сервер nginx с PHP-FPM:
/etc/php/7.2/fpm/php.ini
Если у вас есть несколько opcache.ini
, измените их все.
Шаг 2. Как установить параметры PHP
Чтобы установить параметры PHP:
- Откройте файл
php.ini
в текстовом редакторе. - Найдите часовой пояс вашего сервера в доступных настройках часового пояса
Найдите следующий параметр и при необходимости раскомментируйте его:
1
дата.часовой пояс =
Добавьте настройку часового пояса, найденную на шаге 2.
Измените значение
memory_limit
на одно из значений, рекомендованных в начале этого раздела.Например,
1
memory_limit=2G
Добавьте или обновите конфигурацию
realpath_cache
, чтобы она соответствовала следующим значениям:1 2 3 4 5 6 7 8 9
; ; Увеличьте размер кеша реального пути ; realpath_cache_size = 10M ; ; Увеличить ttl кеша реального пути ; realpath_cache_ttl = 7200
Сохраните изменения и выйдите из текстового редактора.
- Откройте другой
php.ini
(если они разные) и внесите в него такие же изменения.
Шаг 3. Установите параметры OPcache
Для установки opcache.ini
вариантов:
Откройте файл конфигурации OPcache в текстовом редакторе:
-
opcache.ini
(CentOS) -
php.ini
(Убунту) -
/etc/php/7.2/fpm/php.ini
(веб-сервер nginx (CentOS или Ubuntu))
-
- Найдите
opcache.save_comments
и при необходимости раскомментируйте его. - Убедитесь, что его значение равно
1
. - Сохраните изменения и выйдите из текстового редактора.
Перезапустите веб-сервер:
- Apache, Ubuntu:
перезапуск службы apache2
- Apache, CentOS:
перезапуск службы httpd
- nginx, Ubuntu и CentOS:
перезапуск службы nginx
- Apache, Ubuntu:
Поиск и устранение неисправностей
Дополнительные сведения об устранении неполадок PHP см. в следующих статьях службы поддержки Adobe Commerce:
- Ошибка версии PHP или ошибка 404 при доступе к Magento в браузере
- Ошибки настроек PHP
- Расширение PHP mcrypt установлено неправильно
- Проблемы с проверкой готовности версии PHP
- Распространенные фатальные ошибки PHP и решения
php — Самодельные формулы
php — Формулы домашнего пивоваренияУстановить команду:
brew install php
Также известен как: php@8.1
Язык сценариев общего назначения
https://www.php.net/
Лицензия: PHP-3.01
API JSON: JSON: /api/formula/php.json
Bottle JSON API: /api/bottle/php.json
Код формулы: php.rb
на GitHub
Поддержка установки Bottle (бинарный пакет):
Intel | Монтерей | ✅ |
---|---|---|
большой сюр | ✅ | |
каталина | ✅ | |
64-разрядная версия Linux | ✅ | |
Apple Silicon | Монтерей | ✅ |
большой сюр | ✅ |
Текущие версии:
стабильная версия | ✅ | 8.![]() |
головка | ⚡️ | ГОЛОВКА |
Другие версии:
php@8.0 | 8.0.24 | Язык сценариев общего назначения |
php@7.4 | 7.4.32 | Язык сценариев общего назначения |
php@7.3 | 7.3.33 | Язык сценариев общего назначения |
php@7.2 | 7.2.34 | Язык сценариев общего назначения |
Зависит от:
апрель | 1.7.0 | Переносимая библиотека среды выполнения Apache | |
апрель-утилита | 1.6.1 | Сопутствующая библиотека для apr, библиотека Apache Portable Runtime | |
аргон2 | 201 | Библиотека хеширования паролей и утилита CLI | |
аспелл | 0,60,8 | Средство проверки орфографии с лучшей логикой, чем ispell | |
автоконф | 2,71 | Построитель сценариев автоматической настройки | |
завиток | 7.![]() | Получить файл с сервера HTTP, HTTPS или FTP | |
бесплатные | 1.3.13 | Библиотеки для взаимодействия с базами данных Microsoft SQL Server и Sybase | |
гд | 2.3.3 | Графическая библиотека для динамического управления изображениями | |
получить текст | 0,21 | Библиотека интернационализации (i18n) и локализации (l10n) GNU | |
гмп | 6.2.1 | Библиотека арифметических операций с множественной точностью GNU | |
icu4c | 71,1 | Библиотеки C/C++ и Java для Unicode и глобализации | |
крб5 | 1,20 | Протокол сетевой аутентификации | |
библиотека | 14,5 | Библиотека API Postgres C | |
либнатрия | 1.![]() | Сетевая и криптографическая библиотека NaCl | |
libzip | 1.9.2 | Библиотека C для чтения, создания и изменения zip-архивов | |
онигурума | 6.9.8 | Библиотека регулярных выражений | |
опенлдап | 2.6.3 | Набор программного обеспечения каталогов с открытым исходным кодом | |
openssl@1.1 | 1.1.1q | Набор инструментов для криптографии и SSL/TLS | |
pcre2 | 10,40 | Perl-совместимая библиотека регулярных выражений с новым API | |
слайт | 3.39.4 | Интерфейс командной строки для SQLite | |
аккуратный-html5 | 5.8.0 | Дедушка инструментов HTML, с поддержкой современных стандартов | |
unixodbc | 2.![]() |