Установка

Php debian установка: Установка и настройка Apache+PHP+Mysql в Debian

Содержание

Установка PHP и модулей на Ubuntu/Debian

PHP

В Debian и Ubuntu есть несколько вариантов работы php: как модуль apache и как php-fpm. Первый вариант удобен тем, кому придется использовать не только сам PHP, но и возможности Apache, такие как .htaccess. Второй же вариат удобен например для Yii или Laravel.

Установка PHP 5 как модуля Apache:

apt-get update
apt-get install libapache2-mod-php5 php5-cli php5-memcache php5-memcached php5-mysql php5-pgsql php5-curl php5-gd php5-imagick php5-intl php5-mcrypt

Установка PHP 7 как модуля Apache:

apt-get update
apt-get install libapache2-mod-php7.0 php7.0-curl php7.0-cli php-memcache php-memcached php7.0-mysql php7.0-pgsql php7.0-gd php7.0-imagick php7.0-intl php7.0-mcrypt

Установка PHP 5 как PHP-FPM:

apt-get update
apt-get install php5-fpm php5-cli php5-memcache php5-memcached php5-mysql php5-pgsql php5-curl php5-gd php5-imagick php5-intl php5-mcrypt

Установка PHP 7 как PHP-FPM

apt-get update
apt-get install php7.0-fpm php7.0-curl php7.0-cli php-memcache php-memcached php7.0-mysql php7.0-pgsql php7.0-gd php7.0-imagick php7.0-intl php7.0-mcrypt

Модули

В Debian и Ubuntu зачастую установка модулей PHP не требует каких-то сложных манипуляций. Для того, чтобы посмотреть, что Вы можете поставить прямо сейчас, нужно сделать:

lynx@lnxdsk:~$ apt-cache search php7.0
php-amqp - AMQP extension for PHP
php-apcu - APC User Cache for PHP
php-all-dev - package depending on all supported PHP development packages
php-gearman - PHP wrapper to libgearman
php-geoip - GeoIP module for PHP
php-gmagick - Provides a wrapper to the GraphicsMagick library
php-gnupg - PHP wrapper around the gpgme library
php-igbinary - igbinary PHP serializer
php-imagick - Provides a wrapper to the ImageMagick library
php-libsodium - PHP wrapper for the Sodium cryptographic library
php-mailparse - Email message manipulation for PHP
php-memcache - memcache extension module for PHP
php-memcached - memcached extension module for PHP, uses libmemcached
php-mongodb - MongoDB driver for PHP
php-msgpack - PHP extension for interfacing with MessagePack
php-oauth - OAuth 1.0 consumer and provider extension
php-http - PECL HTTP module for PHP Extended HTTP Support
php-pinba - Pinba module for PHP
php-propro - propro module for PHP
php-radius - radius client library for PHP
php-raphf - raphf module for PHP
php-redis - PHP extension for interfacing with Redis
php-rrd - PHP bindings to rrd tool system
php-smbclient - PHP wrapper for libsmbclient
php-solr - PHP extension for communicating with Apache Solr server
php-ssh3 - Bindings for the libssh3 library
php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP
php-uploadprogress - file upload progress tracking extension for PHP
php-uuid - PHP UUID extension
php-yac - YAC (Yet Another Cache) for PHP
php-yaml - YAML-1.1 parser and emitter for PHP
php-zmq - ZeroMQ messaging bindings for PHP
php7.0 - server-side, HTML-embedded scripting language (metapackage)
php7.0-bcmath - Bcmath module for PHP
php7.0-bz2 - bzip2 module for PHP
php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.0-cli - command-line interpreter for the PHP scripting language
php7.0-common - documentation, examples and common module for PHP
php7.0-curl - CURL module for PHP
php7.0-dba - DBA module for PHP
php7.0-dev - Files for PHP7.0 module development
php7.0-enchant - Enchant module for PHP
php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.0-gd - GD module for PHP
php7.0-gmp - GMP module for PHP
php7.0-imap - IMAP module for PHP
php7.0-interbase - Interbase module for PHP
php7.0-intl - Internationalisation module for PHP
php7.0-json - JSON module for PHP
php7.0-ldap - LDAP module for PHP
php7.0-mbstring - MBSTRING module for PHP
php7.0-mcrypt - libmcrypt module for PHP
php7.0-mysql - MySQL module for PHP
php7.0-odbc - ODBC module for PHP
php7.0-opcache - Zend OpCache module for PHP
php7.0-pgsql - PostgreSQL module for PHP
php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.0-pspell - pspell module for PHP
php7.0-readline - readline module for PHP
php7.0-recode - recode module for PHP
php7.0-snmp - SNMP module for PHP
php7.0-soap - SOAP module for PHP
php7.0-sqlite3 - SQLite3 module for PHP
php7.0-sybase - Sybase module for PHP
php7.0-tidy - tidy module for PHP
php7.0-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.0-xmlrpc - XMLRPC-EPI module for PHP
php7.0-xsl - XSL module for PHP (dummy)
php7.0-zip - Zip module for PHP

Давайте для примера установим GD для работы с изображениями:

lynx@lnxdsk:~$ sudo apt-get install php7.0-gd
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Заметьте, вместо «php7.0-gd» выбирается «php-gd»
НОВЫЕ пакеты, которые будут установлены:
  php-gd
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 148 пакетов не обновлено.
Необходимо скачать 350 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 1 493 kB.
Пол:1 http://mirror.mephi.ru/debian stretch/main amd64 php-gd amd64 2.5.0-1 [350 kB]
Получено 350 kБ за 0с (2 266 kБ/c)
Выбор ранее не выбранного пакета php-gd.
(Чтение базы данных … на данный момент установлено 61175 файлов и каталогов.)
Подготовка к распаковке …/php-gd_2.5.0-1_amd64.deb …
Распаковывается php-xdebug (2.5.0-1) …
Настраивается пакет php-xdebug (2.5.0-1) …

После установки нам нужно перезапустить apache (эти примеры я показываю от пользователя root):
root@lnxdsk:~# service apache2 restart

Либо php-fpm, смотря, что используете Вы:

root@lnxdsk:~# service php7.0-fpm restart

Чтобы посмотреть список модулей php, который прямо сейчас подключен, можно запустить:

lynx@lnxdsk:~$ php -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
intl
json
libxml
mbstring
mhash
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pgsql
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib

[Zend Modules]
Xdebug
Zend OPcache

Установка PHP-FPM на Debian из пакетов / Блог компании TrueVDS / Хабр

PHP-FPM — патч к PHP, предоставляющие альтернативный интерфейс FastCGI. Обычно используется с nginx в проектах с высокими нагрузками или дефицитом ресурсов. Для удобной и упрощенной инсталляции мы собрали PHP-FPM в пакет для Debian 5 Lenny. Последнюю пару недель тестировали и тюнили, сейчас выложили в публичный доступ. Над пакетами в поте лица трудился viliar, которому дружно направляем за это благодарности и карму. Багрепорты и замечания приветствуются, лучше комментами к посту.

Инструкция по установке

Устанавливаем PHP-FPM с nginx на минимальную инсталляцию Debian 5.

Настройка нового репозитория

Собранные пакеты лежат в репозитории ftp-pub.truevds.ru/pub/debian. Добавляем репозиторий в конфигурацию apt — создаем файл /etc/apt/sources.list.d/truevds.list с содержимым:

deb ftp://ftp-pub.truevds.ru/pub/debian lenny main
deb-src ftp://ftp-pub.truevds.ru/pub/debian lenny main

Импортируем ключ, которым подписываются пакеты:

apt-key adv --keyserver pgp.mit.edu --recv-key 44BEB7BE

или

wget -O - ftp://ftp-pub.truevds.ru/pub/GPG_TRUEVDS_RU.KEY | apt-key add -

Для того, чтобы при апгрейде системы не переустанавливался PHP без патча, пропишем приоритет в конфгурационном файле /etc/apt/preferences, добавим:

Package: *
Pin: release a=stable
Pin-Priority: 900
 
Package: php php*
Pin: origin ftp-pub.truevds.ru
Pin-Priority: 999

Обновляем индексные файлы архивов:

apt-get update
Установка и конфигурирование

Устанавливаем PHP5 и nginx:

apt-get install php5-cgi nginx

Редактируем /etc/nginx/sites-enabled/default — добавляет в секцию location / привязку расширения .php к php-fpm:

              location ~ \.php$ {
                      fastcgi_pass   unix:/var/run/php-fpm/default.socket;
                      include fastcgi_params;
                      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
              }

Стартуем php-fpm и nginx:

/etc/init.d/php-fpm start
/etc/init.d/nginx start

Система готова к работе.

Проверка работоспособности

Каталогом сервера по умолчанию для nginx является /var/www/nginx-default. Для проверки корректности работы php создаем в нем файл с phpinfo():

echo '<?phpinfo()?>' > /var/www/nginx-default/phpinfo.php

и открываем в браузере http://IP-адрес_сервера/phpinfo.php. Получаем:

Ubuntu

Для Ubuntu 9.10 Karmic есть собранные пакеты от Dreamcat4. Собственно, инструкция по установке PHP-FPM оттуда:

wget https://launchpad.net/~dreamcat4/+archive/ppa/+files/php5-common_5.2.10.dfsg.1-2ubuntu3~pre2_i386.deb
dpkg --install php5-common_5.2.10.dfsg.1-2ubuntu3~pre2_i386.deb

wget https://launchpad.net/~dreamcat4/+archive/ppa/+files/php5-fpm_5.2.10.dfsg.1-2ubuntu3~pre2_i386.deb
dkpg --install php5-fpm_5.2.10.dfsg.1-2ubuntu3~pre2_i386.deb

UPD (2009-12-17) Линки кривые. Репозиторий:

deb http://ppa.launchpad.net/dreamcat4/ppa/ubuntu karmic main 
deb-src http://ppa.launchpad.net/dreamcat4/ppa/ubuntu karmic main 

Или качать напрямую с ppa.launchpad.net/dreamcat4/ppa/ubuntu/pool/main/p/php5

Потрогать своими руками

С этим пакетом мы собрали специальный пресет Оптимизированный PHP, который представляет из себя собранные и настроенные для работы nginx, php-fpm, eaccelerator, mysql и memcached. Для запуска сайта достаточно залить его по FTP. Сейчас этот пресет в статусе беты.

Под его тестирование зарезервировано оборудования и мы можем предоставить бесплатно на месяц несколько десятков серверов c 256 Mb RAM / 480 MHz CPU с этим пресетом. Можно посмотреть, как будут себя вести ваши сайты на связке nginx + php-fpm, можно просто посмотреть, что представляет из себя nginx с php-fpm. Предложение только для хабраюзеров с положительной кармой. В одни руки — один сервер. Заявки на сервер — личным сообщением со своим email. В обмен нужны репорты по различным недочетам, непонятностям, скорости, ну и общие описания ощущений.

Установка LAMP (Linux, Apache, MySQL/MariaDB, PHP) на Debian 9 Stretch

Содержание статьи:

Рассмотрим установку стека LAMP (Linux, Apache, MySQL/MariaDB, PHP) на Debian 9 Stretch.

 

Подготовка системы

Обновляем систему до актуального состояния:



apt-get update && sudo apt-get upgrade -y

 

Установка Apache

Устанавливаем веб-сервер Apache, выполняем команду:



apt-get install apache2 apache2-utils

 

Для проверки, в браузере открываем http://192.168.1.2 (адрес моей системы), и на экране отобразится стандартная страница Apache.

 

По-умолчанию в веб-сервере Apache корневая директория для сайтов (document root) находится в директории /var/www/html.

 

Установка PHP

Устанавливаем PHP и необходимые модули, выполняем команду:



apt-get install php7.0 libapache2-mod-php7.0 php7.0-mysql

 

Перезагружаем веб-сервер apache:

 

Для проверки работы PHP, в корневой директории веб-сервера apache (/var/www/html) создаем файл info.php который будет содержать функцию отображения информации. Выполняем команду:



echo «<?php phpinfo(); ?>» > /var/www/html/info.php

 

Открываем в браузере страницу http://192.168.1.2/info.php (адрес моей системы) и на экране отобразится информации о настройках веб-сервера и PHP.

 

Установка MySQL/MariaDB

MariaDB является заменой для MySQL в Debian 9 Stretch. Если вы попытаетесь установить MySQL (mysql-server) на Debian 9, то система установит MariaDB и установит MariaDB в качестве сервера базы данных по-умолчанию.

 

Устанавливаем сервер MariaDB, выполняем команду:



apt-get install mariadb-server

 

После установки MariaDB, рекомендуется выполнить дополнительный скрипт, для настройки безопасности MariaDB, выполняем команду:



mysql_secure_installation

 

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

 

На этом установка LAMP на Debian 9 Stretch.

 

Понравилась или оказалась полезной статья, поблагодари автора

 

 

Установка PHP 5.6 в Debian 9 [RTFM.WIKI]

В Debian 9 Stretch доступен для установки PHP 7.0
Задача — установить PHP 5.6

Репозиторий Dotdeb больше не будет выпускать новых версий.

Теперь установка новых версий PHP доступна из репозитория deb.sury.org

Каждый раз, когда Debian погружается в криокамеру перед релизом, успевает выйти новый PHP, в котором оказывается всё ещё лучше (ну а как иначе?!).

ЕМНИП то версии PHP в Debian следующие

Let’s roll!

Добавить репозиторий (README.txt

#!/bin/bash
# To add this repository please do:
 
if [ "$(whoami)" != "root" ]; then
    SUDO=sudo
fi
 
${SUDO} apt-get -y install apt-transport-https lsb-release ca-certificates
${SUDO} wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
${SUDO} sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
${SUDO} apt-get update

Обновляем кэш пакетов, смотрим какие пакеты доступны, ставим PHP 5.6

# apt-get update
# apt-cache search php5
# apt-get install php5.6-fpm --no-install-recommends

Переключаемся на PHP 5.6

# update-alternatives --config php
  
There are 2 choices for the alternative php (providing /usr/bin/php).

  Selection    Path             Priority   Status
------------------------------------------------------------
  0            /usr/bin/php7.0   70        auto mode
* 1            /usr/bin/php5.6   56        manual mode
  2            /usr/bin/php7.0   70        manual mode

Press <enter> to keep the current choice[*], or type selection number: 

Вывод php -v

# php -v
PHP 5.6.33-1+0~20180105151408.9+stretch~1.gbp0deeda (cli) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

Этот сайт использует куки. Находясь здесь, вы соглашаетесь с их хранением на вашем компьютере. Также вы подтверждаете, что прочитали и поняли нашу Политику конфиденциальности. Если вы не согласны — покиньте сайт.OKБольше информации о куки

linux/debian/stretch_php56.txt · Последнее изменение: 2018/01/25 15:44 (внешнее изменение)

Устанавливаем PhpMyAdmin в Debian 10 пошаговая инструкция

Устанавливаем PhpMyAdmin в Debian 10

Ставим Php MyAdmin — для управления базами данных через веб-интерфейс. У вас уже должен быть настроенный LAMP, как это сделать в Debian 10 рассказано в одной из прошлых статей.

Не буду рассусоливать, что к чему, если вы читаете эту статью, то понимаете, что к чему и зачем вам это все нужно.

Непосредственно сам процесс, приступим к установке PhpMyAdmin

Как всегда обновляемся

# apt update

Ставим необходимые пакеты

# apt install php-mbstring php-zip php-gd

На момент написания этой статьи Php MyAdmin не доступен в репозиториях Debian 10. Поэтому обратимся к разработчикам и там скачаем нужный нам пакет.

На сегодняшний день актуальная версия 4.9.1 ее будем скачивать. Я скачиваю версию для всех языков, если вас устраивает только английская замените all-languages на english

# wget https://files.phpmyadmin.net/phpMyAdmin/4.9.1/phpMyAdmin-4.9.1-all-languages.tar.gz

Распаковываем скаченное (если английская замените all-languages на english)

# tar xvf phpMyAdmin-4.9.1-all-languages.tar.gz

Теперь переместим распакованное в /usr/share/phpmyadmin

# sudo mv phpMyAdmin-4.9.1-all-languages/ /usr/share/phpmyadmin
Базовые настройки phpMyAdmin

Создаем каталог для временных файлов phpMyAdmin

# mkdir -p /var/lib/phpmyadmin/tmp

Зададим нужные права для каталога /var/lib/phpmyadmin

# chown -R www-data:www-data /var/lib/phpmyadmin

Создаем файл конфигурации, взяв за основу ранее созданный образец

# cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php

Теперь откроем его для редактирования

# nano /usr/share/phpmyadmin/config.inc.php

Прокрутите файл до строки , которая начинается с $cfg[‘blowfish_secret’]:

В единичных кавычках поставите любую комбинацию из 32 символов — пароль для шифрования

Если менее 32 — защита будет слабее, более 32 ничего не даст.

Ниже в этом файле находим строку /* User used to manipulate with storage */

Уберите комментирование двух строк с логином и паролем — укажите свой пароль

Спускаемся далее по файлу до комментария /* Storage database and tables */ и убираем комментирование у каждой строки, получится так

Ну и в самом низу этого файла допишите такую строку строку

$cfg['TempDir'] = '/var/lib/phpmyadmin/tmp';

Теперь сохраните Ctrl+O и закройте файл Ctrl+X

Команда, чтобы использовать файл create_tables.sql для создания базы данных и таблиц конфигурации

# mariadb < /usr/share/phpmyadmin/sql/create_tables.sql
Создаем администратора pma

Откроем командную строку MariaDB

# mariadb

В командной строке выполните следующую команду, чтобы создать пользователя pma и предоставить ему соответствующие права. Обязательно измените пароль  — он должен соответствовать паролю, который вы определили в файле config.inc.php:

GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass';

Если не создали, то создайте обычного пользователя user со всеми правами, пароль password конечно свой

GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Выходим командой exit

Настроим Apache для работы с PhpMyAdmin

Создаем файл phpmyadmin.conf в каталоге /etc/apache2/conf-available/

# nano /etc/apache2/conf-available/phpmyadmin.conf

Вставляем в него следующее содержимое

# phpMyAdmin default Apache configuration
Alias /phpmyadmin /usr/share/phpmyadmin
<Directory /usr/share/phpmyadmin>
Options SymLinksIfOwnerMatch
DirectoryIndex index.php
<IfModule mod_php5.c>
<IfModule mod_mime.c>
AddType application/x-httpd-php .php
</IfModule>
<FilesMatch ".+\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0
</IfModule>
<IfModule mod_php.c>
<IfModule mod_mime.c>
AddType application/x-httpd-php .php
</IfModule>
<FilesMatch ".+\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
php_value include_path .
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
php_admin_value mbstring.func_overload 0
</IfModule>
</Directory>
# Authorize for setup
<Directory /usr/share/phpmyadmin/setup>
<IfModule mod_authz_core.c>
<IfModule mod_authn_file.c>
AuthType Basic
AuthName "phpMyAdmin Setup"
AuthUserFile /etc/phpmyadmin/htpasswd.setup
</IfModule>
Require valid-user
</IfModule>
</Directory>
# Disallow web access to directories that don't need it
<Directory /usr/share/phpmyadmin/templates>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/libraries>
Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
Require all denied
</Directory>

Теперь сохраните его и закройте

Включаем этот файл

# sudo a2enconf phpmyadmin.conf

Перезагружаем Apache2

# sudo systemctl reload apache2

Теперь настало время проверить, перейдем в браузере по адресу

http://localhost/phpmyadmin

Для входа используйте логин и пароль MariaDB

Защита Php MyAdmin

Если вы настраиваете хостинг, сервер для общего пользования, то этот пункт нельзя пропускать.

Включите поддержку файлов .htaccess. Настройте тип авторизации, расположение файлов паролей и пользователей которым дан доступ.

Я же настраивал и использую связку LAMP для web разработки, отладки и тестирования своих локальных проектов.

Мне защита в данном случае ни к чему. Поэтому не буду заострять на этом внимание.

Удачи!

Установка PHP7 в режиме php-fpm на Debian 8 из репозитория

Приветствую, в своей прошлой статье я рассказал об установке последней версии PHP7 из исходников. Разумеется, сама установка не так уж и удобна, а говорить про последующие обновления, думаю, и смысла особого нет. В этой статье поговорим о возможности установки из репозитория, и дальнейшем обновлении с помощью apt-get update && apt-get upgrade.

В официальных дистрибутивах Debian пока не появилась версия PHP 7. Для этого мы будем использовать Personal Package Archive (PPA) — репозиторий, позволяющий сторонним разработчикам собирать и распространять пакеты для Debian/Ubuntu не по официальным каналам. Тут часто можно найти полезные исходники beta версии ПО, модикации, а так же бэкпорты для устаревших версий ОС. Один из разработчиков по имени Ondřej Surý предоставляет PPA для PHP7 на Ubuntu. Для того, чтобы установить пакеты из этого репозитория в Debian придётся немного пошаманить.

Для начала работы с PPA нужно установить необходимые пакеты:

apt-get install software-properties-common python-software-properties

После чего добавляем репозиторий автора в систему с помощью команды:

add-apt-repository ppa:ondrej/php

После выполнения команды будут импортированы все ключи, а также в /etc/apt/sources.list.d/ будет добавлен соответствующий файл с указанием репозитория. Однако, в связи с тем, что репозиторий предназначен для Ubuntu, а добавили мы его в Debian, в файле /etc/apt/sources.list.d/ondrej-php-jessie.list строка будет заканчиваться на «…/ubuntu jessie main», но релиза с именем Jessie в Ubuntu нет, поэтому заменяем в этой строке «jessie» на «trusty». После сохранения обновляем индекс пакетов:

apt-get update

Теперь можно установить нужные нам пакеты:

apt-get install php7.0-fpm
apt-get install php7.0-mysql

Путь до сокета: /var/run/php/php7.0-fpm.sock
Обновляем настройку в nginx:

fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

И перезапускаем nginx:

service nginx restart

Готово!

loader

Установка PHP и модулей на Ubuntu / Debian

PHP

В Debian и Ubuntu есть несколько вариантов работы php: как модуль apache и как php-fpm. Первый вариант удобен тем, кому придется использовать не только сам PHP, но и возможности Apache, такие как .htaccess. Второй же вариат удобен, например, для Yii или Laravel.

Установка PHP 5 как модуля Apache:

apt-get update
apt-get install libapache2-mod-php5 php5-cli php5-memcache php5-memcached php5-mysql php5-pgsql php5-curl php5-gd php5-imagick php5-intl php5-mcrypt 

Установка PHP 7 как модуля Apache:

apt-get update
apt-get установить libapache2-mod-php7.0 php7.0-curl php7.0-cli php-memcache php-memcached php7.0-mysql php7.0-pgsql php7.0-gd php7.0-imagick php7.0-intl php7.0-mcrypt 

Установка PHP 5 как PHP-FPM:

apt-get update
apt-get install php5-fpm php5-cli php5-memcache php5-memcached php5-mysql php5-pgsql php5-curl php5-gd php5-imagick php5-intl php5-mcrypt 

Установка PHP 7 как PHP-FPM

apt-get update
apt-get install php7.0-fpm php7.0-curl php7.0-cli php-memcache php-memcached php7.0-mysql php7.0-pgsql php7.0-gd php7.0-imagick php7.0-intl php7.0-mcrypt 

Модули

В Debian и Ubuntu часто установка модулей PHP не требует каких-то сложных манипуляций. Для того, чтобы посмотреть, что Вы поставить прямо сейчас, нужно сделать:

lynx @ lnxdsk: ~ $ apt-cache search php7.0
php-amqp - расширение AMQP для PHP
php-apcu - Пользовательский кэш APC для PHP
php-all-dev - пакет, зависящий от всех поддерживаемых пакетов разработки PHP
php-gearman - PHP-оболочка для libgearman
php-geoip - модуль GeoIP для PHP
php-gmagick - предоставляет оболочку для библиотеки GraphicsMagick
php-gnupg - PHP-оболочка вокруг библиотеки gpgme
php-igbinary - igbinary сериализатор PHP
php-imagick - предоставляет оболочку для библиотеки ImageMagick
php-libsodium - PHP-оболочка для криптографической библиотеки Sodium
php-mailparse - Обработка сообщений электронной почты для PHP
php-memcache - модуль расширения memcache для PHP
php-memcached - модуль расширения memcached для PHP, использует libmemcached
php-mongodb - драйвер MongoDB для PHP
php-msgpack - расширение PHP для взаимодействия с MessagePack
php-oauth - OAuth 1.0 расширение потребителя и поставщика
php-http - HTTP-модуль PECL для расширенной поддержки HTTP в PHP
php-pinba - модуль Pinba для PHP
php-propro - модуль propro для PHP
php-radius - клиентская библиотека radius для PHP
php-raphf - модуль raphf для PHP
php-redis - расширение PHP для взаимодействия с Redis
php-rrd - привязки PHP к системе инструментов rrd
php-smbclient - PHP-оболочка для libsmbclient
php-solr - расширение PHP для связи с сервером Apache Solr
php-ssh3 - Привязки для библиотеки libssh3
php-stampp - клиентский модуль протокола потоковой передачи текстовых сообщений (STOMP) для PHP
php-uploadprogress - расширение отслеживания загрузки файла для PHP
php-uuid - расширение PHP UUID
php-yac - YAC (еще один кеш) для PHP
php-yaml - ЯМЛ-1.1 парсер и эмиттер для PHP
php-zmq - привязки сообщений ZeroMQ для PHP
php7.0 - серверный язык сценариев со встроенным HTML (метапакет)
php7.0-bcmath - модуль Bcmath для PHP
php7.0-bz2 - модуль bzip2 для PHP
php7.0-cgi - серверный язык сценариев со встроенным HTML (двоичный код CGI)
php7.0-cli - интерпретатор командной строки для языка сценариев PHP
php7.0-common - документация, примеры и общий модуль для PHP
php7.0-curl - модуль CURL для PHP
php7.0-dba - модуль DBA для PHP
php7.0-dev - Файлы для PHP7.0 разработка модуля
php7.0-enchant - Модуль чар для PHP
php7.0-fpm - серверный язык сценариев, встроенный в HTML (двоичный файл FPM-CGI)
php7.0-gd - модуль GD для PHP
php7.0-gmp - модуль GMP для PHP
php7.0-imap - модуль IMAP для PHP
php7.0-interbase - модуль Interbase для PHP
php7.0-intl - Модуль интернационализации для PHP
php7.0-json - модуль JSON для PHP
php7.0-ldap - модуль LDAP для PHP
php7.0-mbstring - модуль MBSTRING для PHP
php7.0-mcrypt - модуль libmcrypt для PHP
php7.0-mysql - модуль MySQL для PHP
php7.0-odbc - модуль ODBC для PHP
php7.0-opcache - модуль Zend OpCache для PHP
php7.0-pgsql - модуль PostgreSQL для PHP
php7.0-phpdbg - серверный язык сценариев, встроенный в HTML (двоичный файл PHPDBG)
php7.0-pspell - модуль pspell для PHP
php7.0-readline - модуль readline для PHP
php7.0-recode - модуль перекодирования для PHP
php7.0-snmp - модуль SNMP для PHP
php7.0-soap - модуль SOAP для PHP
php7.0-sqlite3 - модуль SQLite3 для PHP
php7.0-sybase - модуль Sybase для PHP
php7.0-tidy - аккуратный модуль для PHP
php7.0-xml - модуль DOM, SimpleXML, WDDX, XML и XSL для PHP
php7.0-xmlrpc - модуль XMLRPC-EPI для PHP
php7.0-xsl - модуль XSL для PHP (пустышка)
php7.0-zip - Zip-модуль для PHP 

Давайте для примера установим GD для работы с изображениями:

lynx @ lnxdsk: ~ $ sudo apt-get install php7.0-gd
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Заметьте, вместо «php7.0-gd» выбирается «php-gd»
НОВЫЕ пакеты, которые установлены:
php-gd
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 148 пакетов не обновлено.Необходимо скачать 350 кБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 1 493 КБ.
Пол: 1 http://mirror.mephi.ru/debian stretch / main amd64 php-gd amd64 2.5.0-1 [350 kB]
Получено 350 кБ за 0с (2 266 кБ / c)
Выбор ранее не выбранный пакет php-gd.
(Чтение базы данных… на данный момент установлено 61175 файлов и каталогов.)
Подготовка к распаковке… / php-gd_2.5.0-1_amd64.deb…
Распаковывается php-xdebug (2.5.0-1)…
Настраивается пакет php-xdebug (2.5.0-1)…

После установки нам нужно перезапустить apache (эти примеры я показываю от пользователя root): 
root @ lnxdsk: ~ # перезапуск службы apache2 

Либо php-fpm, смотря, что используете Вы:

root @ lnxdsk: ~ # сервис php7.0-fpm перезапуск 

Чтобы посмотреть список модулей php, который прямо сейчас подключен, можно запустить:

рысь @ lnxdsk: ~ $ php -m
[Модули PHP]
bcmath
bz2
календарь
Ядро
ctype
завиток
Дата
dba
дом
эрег
exif
fileinfo
фильтр
ftp
б-г
gettext
хэш
iconv
международный
json
libxml
mbstring
мхаш
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pgsql
Phar
Posix
строка чтения
Отражение
сессия
шмоп
SimpleXML
мыло
Розетки
SPL
стандарт
sysvmsg
sysvsem
sysvshm
токенизатор
wddx
xdebug
xml
xmlreader
xmlwriter
Zend OPcache
застегивать
zlib

[Модули Zend]
Xdebug
Zend OPcache 

.

Устанавливаем PhpMyAdmin в Debian 10 пошаговая инструкция

Устанавливаем PhpMyAdmin в Debian 10

Ставим Php MyAdmin — для управления базами данных через веб-интерфейс. У вас уже должен быть настроенный LAMP, как это сделать в Debian 10 рассказано в одной из прошлых статей.

Не буду рассусоливать, что к чему, если вы читаете эту статью, то понимаете, что к чему и зачем вам это все нужно.

Непосредственно сам процесс, приступим к установке PhpMyAdmin

Как всегда обновляемся

 # apt update 

Ставим необходимые пакеты

 # apt install php-mbstring php-zip php-gd 

На момент написания этой статьи Php MyAdmin не доступен в репозиториях Debian 10.Поэтому обратимся к разработчикам и там скачаем нужный нам пакет.

На сегодняшний день актуальная версия 4.9.1 ее будем скачивать. Я скачиваю версию для всех языков, если вас устраивает только английская замените all-languages ​​ на english

 # wget https://files.phpmyadmin.net/phpMyAdmin/4.9.1/phpMyAdmin-4.9.1-all-languages.tar.gz 

Распаковываем скаченное (если английская замените все языки на английский )

 # tar xvf phpMyAdmin-4.9.1-all-languages.tar.gz 

Теперь переместим распакованное в / usr / share / phpmyadmin

 # sudo mv phpMyAdmin-4.9.1-все-языки / / usr / share / phpmyadmin 
Базовые настройки phpMyAdmin

Создаем каталог для временных файлов phpMyAdmin

 # mkdir -p / var / lib / phpmyadmin / tmp 

Зададим нужные права для каталога / var / lib / phpmyadmin

 # chown -R www-data: www-data / var / lib / phpmyadmin 

Создайте файл конфигурации, взяв за основу ранее созданный образец

 # cp / usr / share / phpmyadmin / config.sample.inc.php /usr/share/phpmyadmin/config.inc.php 

Теперь откроем его для редактирования

 # nano /usr/share/phpmyadmin/config.inc.php 

Прокрутите файл до строки, которая начинается с $ cfg [‘blowfish_secret’]:

В единичных кавычках поставите любую комбинацию из 32 символов — пароль для шифрования

Если менее 32 — защита будет слабее, более 32 ничего не даст.

Ниже в этом файле находим строку / * Пользователь, использовавший манипуляции с хранилищем * /

Уберите комментирование двух строк с логином и паролем — укажите свой пароль

Спускаемся далее по файлу до комментариев / * База данных и таблицы хранения * / и убираем комментирование у каждой строки, получится так

Ну и в самом низу этого файла допишите такую ​​строку

.

 $ cfg ['TempDir'] = '/ var / lib / phpmyadmin / tmp'; 

Теперь сохраните Ctrl + O и закройте файл Ctrl + X

Команда, чтобы использовать файл create_tables.sql для создания базы данных и таблиц конфигурации

 # mariadb 
Создаем администратора pma

Откроем командную строку MariaDB

 # mariadb 

Выполните следующую команду, чтобы создать пользователя pma и ему соответствующие права. Обязательно измените пароль - он должен паролю, который вы определили в файле config.inc.php:

 GRANT SELECT, INSERT, UPDATE, DELETE НА phpmyadmin.* К 'pma' @ 'localhost', ОПРЕДЕЛЕННОМ 'pmapass'; 

Если не создать, то создайте обычного пользователя пользователь со всеми правами, пароль пароль конечно свой

 ПРЕДОСТАВЛЯТЬ ВСЕ ПРИВИЛЕГИИ НА *. * 'User' @ 'localhost', ОПРЕДЕЛЕННОМ 'паролем' С ОПЦИЕЙ GRANT; 

Выходим командой выход

Настроим Apache для работы с PhpMyAdmin

Создаем файл phpmyadmin.conf в каталоге / etc / apache2 / conf-available /

 # нано / etc / apache2 / conf-available / phpmyadmin.conf 

Вставляем в него следующее содержимое

 # phpMyAdmin Конфигурация Apache по умолчанию 
Псевдоним / phpmyadmin / usr / share / phpmyadmin

Параметры SymLinksIfOwnerMatch
DirectoryIndex index.php
9011 application / x-httpd-php .php


SetHandler application / x-httpd-php

php_value include_path.
php_admin_value upload_tmp_dir / var / lib / phpmyadmin / tmp
php_admin_value open_basedir / usr / share / phpmyadmin /: / etc / phpmyadmin /: / var / lib / phpmyadmin /: / usr / share / php / php-gettext / / share / php / php-php-gettext /: / usr / share / javascript /: / usr / share / php / tcpdf /: / usr / share / doc / phpmyadmin /: / usr / share / php / phpseclib /
php_admin_value mbstring.func_overload 0



AddType application / x-httpd-php .php


SetHandler application / x-httpd-php

php_value include_path.
php_admin_value upload_tmp_dir / var / lib / phpmyadmin / tmp
php_admin_value / etc open_basedir / usr / share phpmyadmin /: / var / lib / phpmyadmin /: / usr / share / php / php-gettext /: / usr / share / php / php-php-gettext /: / usr / share / javascript /: / usr / share / php / tcpdf /: / usr / share / doc / phpmyadmin /: / usr / share / php / phpseclib /
php_admin_value mbstring.func_overload 0


# Авторизация для установки



AuthType Basic
AuthName «phpMyAdmin Setup»
AuthUserFile /etc/phpmyadmin/htpasswd.setup

Требовать действительного пользователя
Dodule>
Запретить веб-доступ к каталогам, которым он не нужен

Запретить всем отказано


Запретить всем отказано
< / Directory>

Требовать все отклонено

Теперь сохраните его и закройте

Включаем этот файл

 # sudo a2enconf phpmyadmin.conf 

Перезагружаем Apache2

 # sudo systemctl перезагрузить apache2 

Теперь настало время проверить, перейдем в браузере по адресу

http: // localhost / phpmyadmin

Для входа використовуйте логин и пароль MariaDB

Защита Php MyAdmin

Если вы настраиваете хостинг, сервер для пользования, то этот пункт нельзя пропускать.

Включите поддержку файлов .htaccess. Настройте тип авторизации, расположение файлов паролей и пользователей дан доступ.

Я же настраиваю и использую связку LAMP для веб-разработки, отладки и тестирования своих локальных проектов.

Мне защита в данном случае ни к чему. Поэтому не буду заострять на этом внимание.

Удачи!

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *