Как перезапустить php ubuntu
Раздел содержит информацию и подсказки, относящиеся к установке 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): apt и aptitude . Объяснения их синтаксиса, особенностей и отличий друг от друга выходит за рамки данного руководства.
User Contributed Notes 6 notes
10 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:
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.
5 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 run
STEP 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-readline
STEP 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/
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
How can phpMyAdmin be restarted after /etc/phpmyadmin/config.inc.php is changed?
How can phpMyAdmin (running on Ubuntu 10.04) be restarted after the /etc/phpmyadmin/config.inc.php file was changed?
18.7k 15 15 gold badges 57 57 silver badges 68 68 bronze badges
asked May 21, 2010 at 14:17
1,377 7 7 gold badges 22 22 silver badges 40 40 bronze badges
I’ve never liked using a package manager for phpMyAdmin. I’ve always found it easier and faster to download directly form phpmyadmin.net, copy the sample config file to config.inc.php, and edit that
May 23, 2010 at 14:51
What does this have to do with the question anyway? It’s about how a change in the config file gets applied.
May 23, 2010 at 15:43
3 Answers 3
No need to restart phpMyAdmin, changes in /etc/phpmyadmin/config.inc.php are automatically applied.
answered May 21, 2010 at 14:21
30.8k 16 16 gold badges 89 89 silver badges 116 116 bronze badges
so why when uncomment :$cfg[‘Servers’][$i][‘AllowNoPassword’] = TRUE; I get still message: Login without a password is forbidden by configuration (see AllowNoPassword)
May 21, 2010 at 14:43
Are you using root account without password? And which version of PMA are you using?
May 21, 2010 at 14:50
i am using as root and 4.3.3
Dec 15, 2010 at 5:39
@Yosef: been there too. There are 2 lines in config file with this setting. I’m not sure which one needs to be uncommented, but if you do just one — 50% chance is that’s the wrong one unless you know exactly what you are doing.
Sep 29, 2012 at 11:20
I was in a similar situation on Ubuntu 10.10 (phpmyadmin 3.3.7deb3build0.10.10.1) and even after editing /etc/phpmyadmin/config.inc.php I couldn’t login (because of AllowNoPassword).
I had to cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php and then add the $cfg[‘Servers’][$i][‘AllowNoPassword’] = TRUE; line to it.
It is strange, but it worked.
answered Feb 1, 2011 at 17:02
goncalossilva goncalossilva
131 3 3 bronze badges
The same issue with me. It seems that Ubuntu ignores /etc/phpmyadmin/config.inc.php but loads /usr/share/phpmyadmin/config.inc.php . Uncomment «Storage database and tables» section and «Designer» mode will be enabled.
Oct 14, 2012 at 19:02
Try and open it using:
sudo gedit /etc/phpmyadmin/config.inc.php
Uncomment it and save, but keep it open — then try opening phpMyAdmin. It should work.
Как установить и настроить phpMyAdmin в Ubuntu 20.04
Рассказываем, как настроить сервер phpMyAdmin на операционной системе Ubuntu 20.04 на облачном сервере, как работать с пользователями и осуществлять начальные настройки безопасности.
Введение
Данная инструкция рассказывает о процессе установки инструмента phpMyAdmin в операционной системе Ubuntu 20.04. Установку выполняем в облачной инфраструктуре Selectel. Нам потребуется настроенный сервер LAMP. О том, как его развернуть, написали в статье.
PhpMyAdmin — бесплатный инструмент, созданный на языке php, для администрирования MySQL с использованием браузера.
В комплекте — огромный пул возможных операций с MySQL и MariaDB. На данный момент актуальная стабильная версия — phpMyAdmin 5.1.1.
Установка phpMyAdmin
Первый шаг — установка модуля расширения php-mbstring. Mbstring предоставляет функции для работы с многобайтными строками, которые облегчают обработку многобайтовых кодировок в php.
sudo apt install php-mbstring -y
Вывод успешной установки:
vlan48@apachi:~$ sudo apt install php-mbstring -y [sudo] password for vlan48: Reading package lists. Done Building dependency tree Reading state information. Done The following additional packages will be installed: libonig5 php7.4-mbstring The following NEW packages will be installed: libonig5 php-mbstring php7.4-mbstring 0 upgraded, 3 newly installed, 0 to remove and 27 not upgraded. Need to get 541 kB of archives. After this operation, 1709 kB of additional disk space will be used. Get:1 http://mirror.selectel.ru/ubuntu focal/universe amd64 libonig5 amd64 6.9.4-1 [142 kB] Get:2 http://mirror.selectel.ru/ubuntu focal-updates/universe amd64 php7.4-mbstring amd64 7.4.3-4ubuntu2.6 [397 kB] Get:3 http://mirror.selectel.ru/ubuntu focal/universe amd64 php-mbstring all 2:7.4+75 [2012 B] Fetched 541 kB in 0s (12.1 MB/s) Selecting previously unselected package libonig5:amd64. (Reading database . 45001 files and directories currently installed.) Preparing to unpack . /libonig5_6.9.4-1_amd64.deb . Unpacking libonig5:amd64 (6.9.4-1) . Selecting previously unselected package php7.4-mbstring. Preparing to unpack . /php7.4-mbstring_7.4.3-4ubuntu2.6_amd64.deb . Unpacking php7.4-mbstring (7.4.3-4ubuntu2.6) . Selecting previously unselected package php-mbstring. Preparing to unpack . /php-mbstring_2%3a7.4+75_all.deb . Unpacking php-mbstring (2:7.4+75) . Setting up libonig5:amd64 (6.9.4-1) . Setting up php7.4-mbstring (7.4.3-4ubuntu2.6) . Creating config file /etc/php/7.4/mods-available/mbstring.ini with new version Setting up php-mbstring (2:7.4+75) . Processing triggers for libc-bin (2.31-0ubuntu9.2) . Processing triggers for libapache2-mod-php7.4 (7.4.3-4ubuntu2.6) . Processing triggers for php7.4-cli (7.4.3-4ubuntu2.6) .
Следующим этапом станет инсталляция phpMyAdmin в систему. Выполняется это командой:
sudo apt install phpmyadmin -y
Обратить внимание на Validate Password
Во время инсталляции LAMP мог быть активирован плагин Validate Password. Это чревато ошибкой при создании пароля для пользователя phpmyadmin. Для деактивации плагина необходимо выполнить следующие шаги:
Открыть консоль управления MySQL:
sudo mysql
Если активна аутентификация по паролю суперпользователя root, команда будет выглядеть так:
mysql -u root -p
Теперь отправляем следующую команду:
UNINSTALL COMPONENT "file://component_validate_password";
Это действие произведет отключение плагина Validate Password.
Покинем консоль MySQL, команда:
exit
Можно продолжить установку phpMyAdmin. Эти действия следует производить только в случае возникновения ошибки, во всех остальных случаях в этом нет необходимости.
Продолжим установку. После отправки команды в терминал появится окно установщика, в котором потребуется ответить на ряд вопросов. Навигация в установщике осуществляется посредством использования клавиш Up down, выбор пунктов кнопка «Пробел», переход ниже — Tab. Ввод выбранного ответа — Enter.
На первый вопрос про используемый web-сервер, необходимо ответить — apache2.
Следующий вопрос про инсталляцию и настройку служебной базы данных для самой программы phpMyAdmin, отвечаем положительно.
Следующим пунктом будет установлен пароль ранее созданной базы данных для пользователя phpmyadmin:
Подтвердим созданный ранее пароль:
Вывод успешной работы программы:
vlan48@apachi:~$ sudo apt -y install phpmyadmin [sudo] password for vlan48: Reading package lists. Done Building dependency tree Reading state information. Done Suggested packages: www-browser php-recode php-gd2 php-pragmarx-google2fa php-bacon-qr-code php-samyoul-u2f-php-server Recommended packages: php-curl php-gd php-bz2 php-zip php-tcpdf The following NEW packages will be installed: phpmyadmin 0 upgraded, 1 newly installed, 0 to remove and 28 not upgraded. Need to get 4426 kB of archives. After this operation, 27.2 MB of additional disk space will be used. Get:1 http://mirror.selectel.ru/ubuntu focal/universe amd64 phpmyadmin all 4:4.9.5+dfsg1-2 [4426 kB] Fetched 4426 kB in 0s (34.8 MB/s) Preconfiguring packages . Determining localhost credentials from /etc/mysql/debian.cnf: succeeded. Selecting previously unselected package phpmyadmin. (Reading database . 46341 files and directories currently installed.) Preparing to unpack . /phpmyadmin_4%3a4.9.5+dfsg1-2_all.deb . Unpacking phpmyadmin (4:4.9.5+dfsg1-2) . Setting up phpmyadmin (4:4.9.5+dfsg1-2) . Determining localhost credentials from /etc/mysql/debian.cnf: succeeded. dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf Creating config file /etc/dbconfig-common/phpmyadmin.conf with new version Creating config file /etc/phpmyadmin/config-db.php with new version checking privileges on database phpmyadmin for phpmyadmin@localhost: user creation needed. granting access to database phpmyadmin for phpmyadmin@localhost: success. verifying access for phpmyadmin@localhost: success. creating database phpmyadmin: success. verifying database phpmyadmin exists: success. populating database via sql. done. dbconfig-common: flushing administrative password apache2_invoke: Enable configuration phpmyadmin
Установка завершена. Прежде чем пойти далее, необходимо произвести проверку работоспособности на данном этапе, чтобы в случае возникновения проблем, их можно было решить с наименьшими трудозатратами.
Проверим. В любом браузере открываем phpMyAdmin по IP-адресу сервера:
ip_address/phpmyadmin
Теперь можно войти в систему с использованием учетной записи, созданной во время установки. Проверяем:
Для учетной записи root по умолчанию применяется доступ с использованием плагина auth_socket. Изменим это на аутентификацию с использованием пароля. В данном случае необходимо изменить тип аутентификации на аутентификацию с использованием пароля.
Откроем консоль MySQL:
sudo mysql
Произведем проверку таблицы пользователей, чтобы увидеть метод аутентификации для каждого пользователя:
SELECT user,plugin,host FROM mysql.user;
+-------------------------+----------------------------------+------------+ | user | plugin | host | +-------------------------+----------------------------------+------------+ | debian-sys-maint | caching_sha2_password | localhost | | mysql.infoschema | caching_sha2_password | localhost | | mysql.session | caching_sha2_password | localhost | | mysql.sys | caching_sha2_password | localhost | | phpmyadmin | caching_sha2_password | localhost | | root | auth_socket | localhost | +------------------------+----------------------------------+--------------+ 7 rows in set (0.00 sec)
Исходя из данных таблицы следует, что аутентификация пользователя root происходит с использованием плагина auth_socket.
Для изменения отправим следующую команду:
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';
Password добавляем свой.
Вывод работы команды:
Query OK, 0 rows affected (0.03 sec)
В случае возникновения ошибки Plugin caching_sha2_password in not loaded следует обратиться к разделу «Возможные ошибки» в конце статьи.
SELECT user,plugin,host FROM mysql.user;
+-----------------------+-----------------------------------+-----------+ | user | plugin | host | +------------------------+----------------------------------+-----------+ | debian-sys-maint | caching_sha2_password | localhost | | mysql.infoschema | caching_sha2_password | localhost | | mysql.session | caching_sha2_password | localhost | | mysql.sys | caching_sha2_password | localhost | | phpmyadmin | caching_sha2_password | localhost | | root | caching_sha2_password | localhost | +------------------------+---------------------------------+-------------+ 7 rows in set (0.00 sec)
Теперь у пользователя root тип аутентификации — caching_sha2_password.
Работа с пользователями
Основная задача в работе с пользователями phpMyAdmin — создание и настройка прав. В качестве примера создадим пользователя с максимальными привилегиями.
Необходимо вернуться в терминал под пользователем с административными правами и отправить команду:
sudo mysql
Так мы запустим работу с базой данных от имени администратора. Потребуется ввод пароля.
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 14 Server version: 8.0.27-0ubuntu0.20.04.1 (Ubuntu) Copyright (c) 2000, 2021, Oracle and/or its affiliates. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
Теперь необходимо добавить пользователя, а также его пароль. Выполнить это можно командой:
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
где user — новый пользователь, а password — пароль для этого пользователя.
В рабочем варианте отправленная команда выглядит так:
CREATE USER 'selectel'@'localhost' IDENTIFIED BY 's*****qq';
Query OK, 0 rows affected (0.02 sec)
Добавим необходимые привилегии для созданного пользователя. В данном случае это будут все привилегии для всех баз данных на сервере:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost';
Если пользователю необходимо разрешить создавать пользователей и назначать им привилегии, необходимо добавить опции:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'localhost' WITH GRANT OPTION;
В данном примере в этом нет необходимости, поэтому будут только назначены полные привилегии для всех баз данных:
GRANT ALL PRIVILEGES ON *.* TO 'selectel'@'localhost';
Query OK, 0 rows affected (0.00 sec)
Остается только применить изменения в настройках привилегий для этого служит команда:
FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
В некоторых случаях может потребоваться удаление ранее созданного пользователя.
Это выполняется с использованием команды:
DROP USER 'user'@'localhost';
Проверяем что пользователь существует:
SELECT user FROM mysql.user;
Отправленная команда осуществляет вывод списка текущих пользователей.
+--------------------------+ | user | +--------------------------+ | debian-sys-maint | | mysql.infoschema | | mysql.session | | mysql.sys | | phpmyadmin | | root | | selectel | +---------------------------+ 7 rows in set (0.01 sec)
Убедившись что пользователь ‘selectel’ активен, можно произвести удаление:
DROP USER 'selectel'@'localhost';
Query OK, 0 rows affected (0.01 sec)
Производим повторную проверку, убеждаясь в его отсутствии в списке.
+--------------------------+ | user | +--------------------------+ | debian-sys-maint | | mysql.infoschema | | mysql.session | | mysql.sys | | phpmyadmin | | root | +---------------------------+ 7 rows in set (0.00 sec)
На этом настройка пользователей завершена. Для выхода из mysql необходимо отправить команду exit.
Обеспечение безопасности phpMyAdmin
Если к серверу есть хоть какой-то доступ из интернета или ненадежной сети, необходимо обеспечить безопасность, добавив авторизацию.
Требуется создать файл .htaccess, который является конфигурационным файлом web-сервера Apache. Он дает возможность управлять web-сервером и настройками web-приложения с помощью директив, без изменения основного файла конфигурации web-сервера. В данной инструкции будет использован текстовый редактор nano.
Создаем файл .htaccess в директории /usr/share/phpmyadmin/ и вносим в него следующие директивы:
AuthType Basic Authname "Restricted Content" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user
sudo nano /usr/share/phpmyadmin/.htaccess
AuthType Basic — авторизация по паролю;
Authname «Restricted Content» — сообщение для окна авторизации;
AuthUserFile /etc/phpmyadmin/.htpasswd — путь к файлу пароля, который будет использован для авторизации;
Require valid-user — директива указывает, что только авторизованные пользователи получат доступ к ресурсу.
Теперь необходимо установить пароль учетной записи.
sudo htpasswd -c /etc/phpmyadmin/.htpasswd user
где user — учетная запись.
sudo htpasswd -c /etc/phpmyadmin/.htpasswd selectel
и дважды вводим пароль.
Adding password for user selectel
Далее необходимо включить использование файлов .htaccess для директории /usr/share. Для этого откроем для редактирования файл apache2.conf и внесем изменения директивы для директории.
AllowOverride All Require all granted
По умолчанию файл выглядит так:
Options FollowSymLinks AllowOverride None Require all denied AllowOverride None Require all granted Options Indexes FollowSymLinks AllowOverride None Require all granted # # Options Indexes FollowSymLinks # AllowOverride None # Require all granted #
Вносим изменения в необходимую директиву:
AllowOverride All Require all granted
# This is the main Apache server configuration file. It contains the # configuration directives that give the server its instructions. # See http://httpd.apache.org/docs/2.4/ for detailed information about # the directives and /usr/share/doc/apache2/README.Debian about Debian specific # hints. # # # Summary of how the Apache 2 configuration works in Debian: # The Apache 2 web server configuration in Debian is quite different to # upstream's suggested way to configure the web server. This is because Debian's # default Apache2 installation attempts to make adding and removing modules, # virtual hosts, and extra configuration directives as flexible as possible, in # order to make automating the changes and administering the server as easy as # possible. # It is split into several files forming the configuration hierarchy outlined # below, all located in the /etc/apache2/ directory: # # /etc/apache2/ # |-- apache2.conf # | `-- ports.conf # |-- mods-enabled # | |-- *.load # | `-- *.conf # |-- conf-enabled # | `-- *.conf # `-- sites-enabled # `-- *.conf # # # * apache2.conf is the main configuration file (this file). It puts the pieces # together by including all remaining configuration files when starting up the # web server. # # * ports.conf is always included from the main configuration file. It is # supposed to determine listening ports for incoming connections which can be # customized anytime. # # * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/ # directories contain particular configuration snippets which manage modules, # global configuration fragments, or virtual host configurations, # respectively. # # They are activated by symlinking available configuration files from their # respective *-available/ counterparts. These should be managed by using our # helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See # their respective man pages for detailed information. # # * The binary is called apache2. Due to the use of environment variables, in # the default configuration, apache2 needs to be started/stopped with # /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not # work with the default configuration. # Global configuration # # # ServerRoot: The top of the directory tree under which the server's # configuration, error, and log files are kept. # # NOTE! If you intend to place this on an NFS (or otherwise network) # mounted filesystem then please read the Mutex documentation (available # at ); # you will save yourself a lot of trouble. # # Do NOT add a slash at the end of the directory path. # #ServerRoot "/etc/apache2" # # The accept serialization lock file MUST BE STORED ON A LOCAL DISK. # #Mutex file:$ default # # The directory where shm and other runtime files will be stored. # DefaultRuntimeDir $ # # PidFile: The file in which the server should record its process # identification number when it starts. # This needs to be set in /etc/apache2/envvars # PidFile $ # # Timeout: The number of seconds before receives and sends time out. # Timeout 300 # # KeepAlive: Whether or not to allow persistent connections (more than # one request per connection). Set to "Off" to deactivate. # KeepAlive On # # MaxKeepAliveRequests: The maximum number of requests to allow # during a persistent connection. Set to 0 to allow an unlimited amount. # We recommend you leave this number high, for maximum performance. # MaxKeepAliveRequests 100 # # KeepAliveTimeout: Number of seconds to wait for the next request from the # same client on the same connection. # KeepAliveTimeout 5 # These need to be set in /etc/apache2/envvars User $ Group $ # # HostnameLookups: Log the names of clients or just their IP addresses # e.g., www.apache.org (on) or 204.62.129.132 (off). # The default is off because it'd be overall better for the net if people # had to knowingly turn this feature on, since enabling it means that # each client request will result in AT LEAST one lookup request to the # nameserver. # HostnameLookups Off # ErrorLog: The location of the error log file. # If you do not specify an ErrorLog directive within a # container, error messages relating to that virtual host will be # logged here. If you *do* define an error logfile for a # container, that host's errors will be logged there and not here. # ErrorLog $/error.log # # LogLevel: Control the severity of messages logged to the error_log. # Available values: trace8, . trace1, debug, info, notice, warn, # error, crit, alert, emerg. # It is also possible to configure the log level for particular modules, e.g. # "LogLevel info ssl:warn" # LogLevel warn # Include module configuration: IncludeOptional mods-enabled/*.load IncludeOptional mods-enabled/*.conf # Include list of ports to listen on Include ports.conf # Sets the default security model of the Apache2 HTTPD server. It does # not allow access to the root filesystem outside of /usr/share and /var/www. # The former is used by web applications packaged in Debian, # the latter may be used for local directories served by the web server. If # your system is serving content from a sub-directory in /srv you must allow # access here, or in any related virtual host. Options FollowSymLinks AllowOverride None Require all denied AllowOverride All Require all granted Options Indexes FollowSymLinks AllowOverride None Require all granted # # Options Indexes FollowSymLinks # AllowOverride None # Require all granted # # AccessFileName: The name of the file to look for in each directory # for additional configuration directives. See also the AllowOverride # directive. # AccessFileName .htaccess # # The following lines prevent .htaccess and .htpasswd files from being # viewed by Web clients. # Require all denied # # The following directives define some format nicknames for use with # a CustomLog directive. # # These deviate from the Common Log Format definitions in that they use %O # (the actual bytes sent including headers) instead of %b (the size of the # requested file), because the latter makes it impossible to detect partial # requests. # # Note that the use of %i instead of %h is not recommended. # Use mod_remoteip instead. # LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%i\" \"%i\"" vhost_combined LogFormat "%h %l %u %t \"%r\" %>s %O \"%i\" \"%i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %O" common LogFormat "%i -> %U" referer LogFormat "%i" agent # Include of directories ignores editors' and dpkg's backup files, # see README.Debian for details. # Include generic snippets of statements IncludeOptional conf-enabled/*.conf # Include the virtual host configurations: IncludeOptional sites-enabled/*.conf
Сохраняем, перечитаем конфигурацию Apache2, отправкой команды:
sudo systemctl reload apache2
Если сервер пока не в активной работе можно перезапустить демона командой:
sudo systemctl restart apache2
При попытке попасть в phpMyAdmin теперь потребуется дополнительная авторизация.
После ввода верных учетных данных авторизация проходит успешно.
Удаление phpMyAdmin
Удаление происходит с использованием этих команд:
sudo apt remove phpmyadmin -y
Отвечаем на все вопросы положительно.
Reading package lists. Done Building dependency tree Reading state information. Done The following packages were automatically installed and are no longer required: dbconfig-common dbconfig-mysql libjs-jquery libjs-openlayers libjs-sphinxdoc libjs-underscore libxslt1.1 php php-google-recaptcha php-phpmyadmin-motranslator php-phpmyadmin-shapefile php-phpmyadmin-sql-parser php-phpseclib php-psr-cache php-psr-container php-psr-log php-symfony-cache php-symfony-cache-contracts php-symfony-expression-language php-symfony-service-contracts php-symfony-var-exporter php-twig php-twig-extensions php-xml php7.4 php7.4-xml Use 'sudo apt autoremove' to remove them. The following packages will be REMOVED: phpmyadmin 0 upgraded, 0 newly installed, 1 to remove and 41 not upgraded. After this operation, 27.2 MB disk space will be freed. (Reading database . 54693 files and directories currently installed.) Removing phpmyadmin (4:4.9.5+dfsg1-2) . Determining localhost credentials from /etc/mysql/debian.cnf: succeeded. dbconfig-common: dumping mysql database phpmyadmin to /var/tmp/phpmyadmin.phpmyadmin.2021-11-16-07.04.mysql.rTp4t6. dbconfig-common: dropping mysql database phpmyadmin. dropping database phpmyadmin: success. verifying database phpmyadmin was dropped: success. dbconfig-common: revoking privileges for user phpmyadmin on phpmyadmin. revoking access to database phpmyadmin from phpmyadmin@localhost: success. Conf phpmyadmin disabled. apache2_invoke postrm:Disable configuration phpmyadmin
Для очистки неиспользуемых зависимостей применяем:
sudo apt-get autoremove
Reading package lists. Done Building dependency tree Reading state information. Done The following packages will be REMOVED: dbconfig-common dbconfig-mysql libjs-jquery libjs-openlayers libjs-sphinxdoc libjs-underscore libxslt1.1 php php-google-recaptcha php-phpmyadmin-motranslator php-phpmyadmin-shapefile php-phpmyadmin-sql-parser php-phpseclib php-psr-cache php-psr-container php-psr-log php-symfony-cache php-symfony-cache-contracts php-symfony-expression-language php-symfony-service-contracts php-symfony-var-exporter php-twig php-twig-extensions php-xml php7.4 php7.4-xml 0 upgraded, 0 newly installed, 26 to remove and 41 not upgraded. After this operation, 20.5 MB disk space will be freed. Do you want to continue? [Y/n] y (Reading database . 52976 files and directories currently installed.) Removing dbconfig-mysql (2.0.13) . Removing dbconfig-common (2.0.13) . Removing libjs-sphinxdoc (1.8.5-7ubuntu3) . Removing libjs-jquery (3.3.1~dfsg-3) . Removing libjs-openlayers (2.13.1+ds2-7) . Removing libjs-underscore (1.9.1~dfsg-1ubuntu0.20.04.1) . Removing php-xml (2:7.4+75) . Removing php7.4-xml (7.4.3-4ubuntu2.7) . Removing libxslt1.1:amd64 (1.1.34-4) . Removing php (2:7.4+75) . Removing php-google-recaptcha (1.2.3-1) . Removing php-phpmyadmin-motranslator (5.0.0-1) . Removing php-phpmyadmin-shapefile (2.1-3) . Removing php-phpmyadmin-sql-parser (4.6.1-2) . Removing php-phpseclib (2.0.23-2) . Removing php-symfony-expression-language (4.3.8+dfsg-1ubuntu1) . Removing php-symfony-cache (4.3.8+dfsg-1ubuntu1) . Removing php-symfony-cache-contracts (1.1.8-1) . Removing php-psr-cache (1.0.1-2) . Removing php-symfony-service-contracts (1.1.8-1) . Removing php-psr-container (1.0.0-2) . Removing php-psr-log (1.1.2-1) . Removing php-symfony-var-exporter (4.3.8+dfsg-1ubuntu1) . Removing php-twig-extensions (1.5.4-1) . Removing php-twig (2.12.5-1) . Removing php7.4 (7.4.3-4ubuntu2.7) . Processing triggers for libc-bin (2.31-0ubuntu9.2) . Processing triggers for man-db (2.9.1-1) . Processing triggers for libapache2-mod-php7.4 (7.4.3-4ubuntu2.7) .
Перезапускаем демон apache2:
sudo service apache2 restart
PhpMyAdmin удален с сервера.
Возможные ошибки
В процессе изменения типа аутентификации учетной записи root:
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';
Возможно возникновение ошибки:
Plugin caching_sha2_password in not loaded
Это вызвано тем, что в свежих версиях mysql тип аутентификации по умолчанию:
caching_sha2_password
Это не позволит произвести удаленное подключение к mysql и вызовет ошибку плагина:
caching_sha2_password
Возможным вариантом решения является установка типа аутентификации:
mysql_native_password
Команда выглядит так:
ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Теперь возможен доступ пользователя к mysql с localhost.
Для подключения с нескольких хостов необходимо изменить команду:
ALTER USER 'username'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
Для применения изменений необходимо использовать:
FLUSH PRIVILEGES;
Заключение
В этом мануале мы рассказали о настройке сервера phpMyAdmin на операционной системе Ubuntu 20.04 на облачном сервере от Selectel. Мы разобрали основные моменты, которых достаточно для того, чтобы быстро и качественно установить данный инструмент на сервер, а также рассмотрели настройки безопасности.
Зарегистрируйтесь в панели управления
И уже через пару минут сможете арендовать сервер, развернуть базы данных или обеспечить быструю доставку контента.
Как установить Linux, Apache, MySQL, PHP (LAMP) в Ubuntu 18.04

Стек LAMP — это набор программного обеспечения с открытым исходным кодом, которой обычно устанавливается на сервер для отображения динамических веб-сайтов и веб-приложений. Эта аббревиатура обозначает операционную систему Linux с установленным веб-сервером Apache. Данные сайта хранятся в базе данных MySQL, динамический контент обрабатывается с помощью PHP.
Эта статья описывает процесс установки LAMP на виртуальный сервер (Droplet) в Ubuntu 18.04.
Необходимые условия
Перед тем, как начать следовать шагам, описанным в этом руководстве, вам необходимо настроить отдельный, не-рутовый (non-root) профиль пользователя на вашем сервере с Ubuntu 18.04. Вы можете сделать это используя нашу статью о первичной настройке сервера на Ubuntu 18.04.
Шаг 1 — Установка Apache и настройка файрвола
Веб-сервер Apache в настоящее время является одним из самых популярных веб-серверов в мире. Он хорошо документирован и используется значительную часть времени с момента создания сети Интернет, что делает его прекрасным выбором для хостинга веб-сайта.
Установим Apache используя менеджер пакетов Ubuntu apt :
Поскольку мы используем команду sudo , эти команды будут выполняться с привилегиями root. В процессе установки операционная система запросит ваш пароль пользователя.
После ввода пароля apt сообщит, какие пакеты будут установлены и сколько места они займут на диске. Нажмите Y и Enter для продолжения установки.
Настройка файрвола для разрешения веб-трафика
Теперь убедимся, что ваш файрвол пропускает HTTP и HTTPS трафик. Мы будем исходить из предположения, что вы уже выполнили инструкции по первичной настройке сервера и включили файрвол UFW. Для начала убедимся, что UFW имеет профиль для Apache следующей командой:
ВыводAvailable applications: Apache Apache Full Apache Secure OpenSSH
Проверим настройку профиля Apache Full , она должна разрешать трафик для портов 80 и 443 :
ВыводProfile: Apache Full Title: Web Server (HTTP,HTTPS) Description: Apache v2 is the next generation of the omnipresent Apache web server. Ports: 80,443/tcp
Разрешим входящий HTTP и HTTPS трафик для этого профиля:
Проверить результат установки можно набрав в вашем веб-браузере публичный IP адрес вашего сервера (если вы еще не знаете, как найти публичный IP адрес вашего сервера, смотрите следующий раздел этой статьи):
http://IP_адрес_вашего_сервера
Вы увидите страницу Apache, отображаемую по умолчанию для информации и целей тестирования. Она должна выглядеть похожим образом:

Если вы видите эту страницу, ваш веб-сервер корректно установлен и доступен через файрвол.
Как найти публичный IP адрес вашего сервера
Если вы не знаете публичный IP адрес вашего сервера, его можно определить несколькими способами. Обычно, это адрес, который вы используете для соединения с вашим сервером по SSH.
Определить этот адрес можно с помощью командной строки. Сначала используйте инструмент iproute2 для получения вашего адреса набрав следующую команду:
Результатом выполнения этой команды будут две или три строки, содержащие корректный адрес. Ваш компьютер, возможно, сможет использовать только один из них, поэтому попробуйте каждый вариант.
В качестве альтернативы можно узнать, как curl видит ваш сервер. Это можно сделать следующим образом:
В независимости от метода, который вы использовали для получения своего IP адреса, вы можете использовать этот IP адрес для доступа к серверу через адресную строку веб-браузера.
Шаг 2 — Установка MySQL
Теперь, когда наш веб-сервер установлен и запущен, пора установить MySQL. MySQL это система управления базами данных. Она организует и обеспечит доступ к базам данных, в которых ваш сайт может хранить информацию.
Мы можем вновь использовать apt для загрузки и установки программного обеспечения:
Обратите внимание: В данном случае вам нет необходимости предварительно выполнять команду sudo apt update , т.к. мы выполняли ее недавно при установке Apache, и индекс пакетов на вашем компьютере уже должен быть обновлен.
Вам будет показан список пакетов, которые будут установлены, а также сколько места на диске они займут. Нажмите Y для продолжения установки.
После завершения установки нам потребуется выполнить некоторые дополнительные команды, чтобы наше окружение MySQL было настроено безопасным образом. Введите следующую команду:
В результате выполнения этой команды вам будет предложено настроить плагин валидации паролей ( VALIDATE PASSWORD PLUGIN ).
Внимание: Решение включать плагин валидации паролей или нет носит субъективный характер. При включении все пароли, которые не удовлетворяют определённым критериям безопасности, будут отвергаться MySQL с сообщением об ошибке. Это может вызывать проблемы, если вы используете “слабые” пароли совместно с программным обеспечением, которое конфигурирует профили пользователей MySQL, например, пакеты Ubuntu для phpMyAdmin. Вы можете оставить валидацию паролей отключенной, но в этом случае вам следует всегда использовать “сильные” уникальные пароли для пользователей базы данных.
Введите Y для включения плагина или что-нибудь другое для продолжения без его включения:
VALIDATE PASSWORD PLUGIN can be used to test passwords and improve security. It checks the strength of password and allows the users to set only those passwords which are secure enough. Would you like to setup VALIDATE PASSWORD plugin? Press y|Y for Yes, any other key for No:
Если вы включили валидацию паролей, вам будет предложено установить уровень надёжности паролей при валидации. Имейте в виду, что при выборе значения 2 (самый строгий уровень валидации), вы будете получать ошибки при попытке задать пароль без цифр, букв в верхнем и нижнем регистре, а также без специальных символов, а также при попытке использовать пароль, основанный на распространённых словах, которые уязвимы для подбора паролей по словарю.
There are three levels of password validation policy: LOW Length >= 8 MEDIUM Length >= 8, numeric, mixed case, and special characters STRONG Length >= 8, numeric, mixed case, special characters and dictionary file Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1
Вне зависимости от того, включили вы плагин валидации паролей или нет, далее вам будет предложено задать пароль для пользователя root для MySQL. Это административный аккаунт пользователя в MySQL, который имеет повышенные привилегии. Вы можете рассматривать его, как аналог пользователя root для самого сервера (с той лишь разницей, что это аккаунт для MySQL). Задайте сильный уникальный пароль, не оставляйте пароль пустым.
Если вы включили валидацию паролей, вам будет показан уровень надёжности заданного вами ранее пароля root пользователя, а также вам будет предложено изменить этот пароль. Если вы не хотите менять пароль, введите N или “no”:
Using existing password for root. Estimated strength of the password: 100 Change the password for root ? ((Press y|Y for Yes, any other key for No) : n
На все последующие вопросы просто вводите Y и нажимайте клавишу ENTER для выбора настроек по умолчанию. При этом удалятся некоторые тестовые пользователи и базы данных, будет отключена возможность удаленного доступа с учетной записью root-пользователя, и все изменения будут немедленно применены в MySQL.
Обратите внимание на то, что на серверах Ubuntu, использующих MySQL 5.7 (и более поздние версии), root пользователь в MySQL настроен таким образом, что его аутентификация по умолчанию происходит с помощью плагина auth_socket , а не с помощью пароля. Это во многих случаях повышает безопасность, но, в то же время, может усложнить настройку доступа к root пользователю для некоторых программ (например, phpMyAdmin).
Если вы хотите настроить root пользователя на использование пароля, вам необходимо изменить метод аутентификации с auth_socket на mysql_native_password . Для того, чтобы это сделать, войдите в оболочку MySQL в терминале:
Далее просмотрите метод аутентификации для каждого из ваших пользователей MySQL с помощью следующей команды:
Вывод+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | | auth_socket | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 4 rows in set (0.00 sec)
В этом примере ваш пользователь root использует аутентификацию с помощью плагина auth_socket . Для изменения этой настройки на использование пароля используйте следующую команду ALTER USER . Не забудьте изменить password на ваш сильный пароль:
Далее выполните команду FLUSH PRIVILEGES , которая применит внесённые изменения:
Проверьте методы авторизации для пользователей ещё раз для того, чтобы убедиться, что пользователь root более не использует плагин auth_socket для авторизации:
Вывод+------------------+-------------------------------------------+-----------------------+-----------+ | user | authentication_string | plugin | host | +------------------+-------------------------------------------+-----------------------+-----------+ | root | *3636DACC8616D997782ADD0839F92C1571D6D78F | mysql_native_password | localhost | | mysql.session | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost | | debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost | +------------------+-------------------------------------------+-----------------------+-----------+ 4 rows in set (0.00 sec)
Как можно видеть на представленном выводе теперь root пользователь MySQL аутентифицируется с использованием пароля. После того, как мы в этом убедились, можно выйти из оболочки MySQL:
Теперь ваша система управления базами данных установлена и мы можем двигаться дальше и установить PHP, последний компонент LAMP.
Шаг 3 — Установка PHP
PHP это компонент, который будет обрабатывать код для отображения динамического контента. Он может запускать скрипты, подключаться к нашим базам данных MySQL для получения информации и передавать обработанный контент в наш веб-сервер для отображения.
Мы можем вновь воспользоваться менеджером пакетов apt для установки компонентов. Мы также добавим некоторые вспомогательные пакеты, чтобы код на PHP мог работать с нашим сервером Apache, а также обращаться к базе данных MySQL:
Данная команда должна установить PHP без каких либо проблем. Вскоре мы это проверим.
В большинстве случаев, мы захотим изменить способ, который Apache использует для поиска файлов при запросе директории. На данный момент, если пользователь запрашивает директорию с сервера, Apache в первую очередь будет искать файл с названием index.html . Мы хотим, чтобы наш веб-сервер отдавал предпочтение PHP файлам, так что мы настроим Apache таким образом, чтобы сначала он искал файлы index.php .
Для этого введите следующую команду, чтобы открыть файл dir.conf в текстовом редакторе с привилегиями пользователя root:
Содержимое файла будет выглядеть следующим образом:
/etc/apache2/mods-enabled/dir.conf
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
Мы хотим переместить индексный файл PHP index.php , выделенный выше, на первое место после спецификации DirectoryIndex следующим образом:
/etc/apache2/mods-enabled/dir.conf
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
После внесения правок сохраните и закройте файл сочетанием клавиш CTRL-X . Вам придется подтвердить операцию вводом Y и затем нажатием клавиши ENTER для подтверждения места сохранения файла.
После этого нам необходимо перезапустить Apache для применения внесенных изменений. Вы можете сделать это при помощи команды:
Мы также можем проверить статус сервиса apache2 используя systemctl :
Пример Вывода● apache2.service - LSB: Apache2 web server Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf Active: active (running) since Tue 2018-04-23 14:28:43 EDT; 45s ago Docs: man:systemd-sysv-generator(8) Process: 13581 ExecStop=/etc/init.d/apache2 stop (code=exited, status=0/SUCCESS) Process: 13605 ExecStart=/etc/init.d/apache2 start (code=exited, status=0/SUCCESS) Tasks: 6 (limit: 512) CGroup: /system.slice/apache2.service ├─13623 /usr/sbin/apache2 -k start ├─13626 /usr/sbin/apache2 -k start ├─13627 /usr/sbin/apache2 -k start ├─13628 /usr/sbin/apache2 -k start ├─13629 /usr/sbin/apache2 -k start └─13630 /usr/sbin/apache2 -k start
Чтобы расширить функциональность PHP, мы можем установить некоторые дополнительные модули. Для просмотра доступных опций для модулей и библиотек PHP вы можете передать результат apt search в less , которая позволит вам проматывать вывод:
Используйте клавиши стрелок вверх и вниз для проматывания списка, для выхода нажмите Q .
В результате вам будут показаны все опциональные компоненты, которые можно установить, сопровождаемые кратким описанием для каждого:
bandwidthd-pgsql/bionic 2.0.1+cvs20090917-10ubuntu1 amd64 Tracks usage of TCP/IP and builds html files with graphs bluefish/bionic 2.2.10-1 amd64 advanced Gtk+ text editor for web and software development cacti/bionic 1.1.38+ds1-1 all web interface for graphing of monitoring systems ganglia-webfrontend/bionic 3.6.1-3 all cluster monitoring toolkit - web front-end golang-github-unknwon-cae-dev/bionic 0.0~git20160715.0.c6aac99-4 all PHP-like Compression and Archive Extensions in Go haserl/bionic 0.9.35-2 amd64 CGI scripting program for embedded environments kdevelop-php-docs/bionic 5.2.1-1ubuntu2 all transitional package for kdevelop-php kdevelop-php-docs-l10n/bionic 5.2.1-1ubuntu2 all transitional package for kdevelop-php-l10n . :
Чтобы получить больше информации по каждому модулю, вы можете поискать в Интернете или посмотреть полное описание пакета при помощи команды:
Ответ будет содержать много текста, среди которого есть поле Description . Именно оно и будет содержать расширенное описание функциональности, предоставляемой модулем.
Например, чтобы узнать назначение модуля php-cli , мы можем выполнить команду:
Помимо большого количества прочей информации, вы увидите следующее:
Вывод. Description: command-line interpreter for the PHP scripting language (default) This package provides the /usr/bin/php command interpreter, useful for testing PHP scripts from a shell or performing general shell scripting tasks. . PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. . This package is a dependency package, which depends on Ubuntu's default PHP version (currently 7.2). .
Если после изучение вы решили, что хотите установить пакет, вы можете сделать это используя команду apt install как мы делали ранее при установке другого программного обеспечения.
Если мы решили, что хотим установить php-cli , мы можем ввести команду:
Для установки сразу нескольких модулей, вы можете перечислить их через пробелы следом за командой apt install следующим образом:
Теперь ваш стек LAMP установлен и сконфигурирован. Однако перед внесением любых других изменений и перед установкой приложений нам ещё стоит протестировать настройку PHP на случай возможных проблем.
Шаг 4 — Тестирование работы PHP на вашем веб-сервере
Чтобы проверить, что наша система сконфигурирована должным образом, мы можем создать простой PHP скрипт. Назовём этот скрипт info.php . Чтобы Apache нашел и обработал файл корректно, он должен быть сохранен в специальной директории, которая называется “web root”.
В Ubuntu 18.04 данная директория находится по адресу /var/www/html/ . Мы можем создать там файл введя следующую команду:
Откроется пустой файл. Введём в файл следующий текст, который является корректным PHP кодом:
После внесения изменений сохраните и закройте файл.
Теперь мы можем проверить, может ли веб-сервер корректно отображать контент, сгенерированный PHP скриптом. Для проверки нам просто нужно открыть данную страницу в веб-браузере. Вам снова потребуется публичный IP-адрес сервера.
Откроем этот адрес:
http://IP_адрес_вашего_сервера/info.php
Страница, на которую вы попадете, должна выглядеть похожим образом:

Данная страница содержит информацию о вашем сервере с точки зрения PHP. Она полезна для отладки и чтобы удостовериться в корректности применения настроек.
Если все прошло успешно, значит ваш PHP работает корректно.
Вы, возможно, захотите удалить этот файл после теста, т.к. он может дать информацию о вашем сервере неавторизованным пользователям. Для удаления файла введите команду:
Вы всегда сможете заново создать этот файл, если вам снова потребуется доступ к этой информации.
Заключение
Теперь, когда ваш стек LAMP установлен, у вас есть множество вариантов того, что делать дальше. Фактически, вы установили платформу, которая позволит установить (развернуть) большинство типов веб-сайтов и сетевого программного обеспечения на вашем сервере.
В качестве первого шага мы рекомендуем настроить веб-сервер на работу через HTTPS. Самый простой вариант обезопасить свой сайт с помощью бесплатного TLS/SSL сертификата — это использовать сервис Let’s Encrypt.
Некоторые другие популярные мероприятия:
- Установить WordPress — наиболее популярную систему управления контентом в интернете.
- Установить PHPMyAdmin для управления базами данных MySQL из веб-браузера.
- Научиться использовать SFTP для передачи файлов на ваш сервер и с него.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
