Меню Рубрики

Установка lamp debian 8 php

Установка lamp debian 8 php

LAMP это акроним от Linux, Apache, MySQL, PHP. В этой инструкции будет описано как установить веб-сервер Apache на Debian 8 с поддержкой PHP5 и MySQL

В этой инструкции Мы будем использовать в качестве hostname (имени сервера) server1.example.com c IP адресом 192.168.0.100.

Эти настройки будут отличаться от ваших, поэтому в процессе настройки измените их.

Установка MySQL

Для начала установим сервер MySQL, для этого в командной строке нужно выполнить:

apt-get install mysql-server mysql-client

При установки у вас спросить пароль для MySQL от пользователя root.

Установка Apache

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

apt-get install apache2-mpm-prefork

После, откройте в браузере http://192.168.0.100 , и на экране будет отображаться стандартная страница с надписью «It works!»

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

Конфигурационный файл (файл с настройками) веб-сервера Apache находится в файле /etc/apache2/apache2.conf

Более подробная документация по настройке находится в файле /usr/share/doc/apache2/README.Debian.gz

Установка PHP

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

apt-get install php5 libapache2-mod-php5

Дополнительно можно установить и некоторые другие пакеты для работы PHP с различными модулями. Для этого выполним команду:

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

После установки нужно выполнить перезагрузку веб-сервера apache:

systemctl restart apache2.service

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

(функция phpinfo() отображает много полезной информации о настройках веб-сервера и PHP).

Для это нужно выполнить команду:

После чего в браузере можно открыть страницу:

Установка phpMyAdmin

phpMyAdmin это программа предоставляющая веб-интерфейс через который можно управлять базами данных MySQL

Для установки выполним команду:

apt-get install phpmyadmin

Пароль от пользователя который вводился при установке mysql (пароль от пользователя баз данных root)

источник

Установка конфигурации Linux + Apache + MySQL + PHP (LAMP) на Debian 8.8

06 мая 2017 года проект Debian с радостью сообщил о восьмом обновлении своего стабильного выпуска Debian 8 (кодовое имя jessie). Это обновление в основном содержит исправления проблем безопасности стабильного выпуска.

Аббревиатура LAMP включает Linux, Apache, MySQL, Perl/Python/PHP и является довольно мощным инструментом для разработки и использования web-приложений.

Подразумевается, что с установкой Debian Linux проблем не возникло и эта операционная система уже стоит на ПК. Сервер будем ставить в такой конфигурации:

  • Apache2 — web-сервер;
  • MySQL5 — сервер баз данных;
  • PHP5 — мощный язык написания сценариев;
  • phpMyAdmin — удобный интерфейс для работы с MySQL.

Установка MySQL 5

Для начала установим сервер MySQL. Для этого в терминале нужно выполнить следующую команду от пользователя root:

В начале установки у вас запросят пароль.

Во время установки вам будет предложено назначить пароль администратора для базы данных MySQL. Обязательно установите пароль, если только эта установка не учебная.

Затем повторите ввод пароля для MySQL от пользователя root.

Далее начнётся распаковка и установка программы, затем предварительная настройка пакетов.

Установка Apache 2

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

Проверьте веб-сервер Apache. В адресной строке веб-браузера введите адрес: http://localhost или http://127.0.0.1 и вы увидите следующее:

Apache установился.

Также возможны такие варианты

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

Введите в строке браузера /var/www/html/index.html

Конфигурационный файл (файл с настройками) веб-сервера Apache находится в файле /etc/apache2/apache2.conf

Более подробная документация по настройке находится в файле /usr/share/doc/apache2/README.Debian.gz

Установка PHP 5

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

В данном случае у вас установится php 5.6.3

Дополнительно можно установить и некоторые другие пакеты для работы PHP с различными модулями. Для этого выполним команду:

После установки нужно выполнить перезагрузку веб-сервера apache:

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

Функция phpinfo() отображает много полезной информации о настройках веб-сервера и PHP.

Необходимо открыть терминал и выполнить команды:

Теперь изменяем право доступа к файлу. Для этого в терминале под root вызываем менеджера, в данном примере менеджера для рабочего окружения Xfce.

Путь: /var/www/html/

После чего в браузере можно открыть страницу: http://localhost/pi.php

Установка phpMyAdmin

PhpMyAdmin — программа предоставляющая веб-интерфейс, через который можно управлять базами данных MySQL.

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

Выберем веб-сервер для автоматической перенастройки

Пробел, затем Enter

Настроим базу данных PhpMyAdmin с помощью dbconfig-common, ответив «Да»

Далее вводим пароль администратора к базе данных MySQL

Далее Enter.

Вводим ещё пароль для приложений phpmyadmin.

Далее Enter.

Подтверждаем пароль для приложений phpmyadmin.

Далее Enter.

Дождитесь окончания установки, а затем в адресной строке веб-браузера введите: http://localhost/phpmyadmin

Пользователь root, пароль тот, который вы указали в самом начале установи Lamp (пароль администратора для базы данных MySQL)

Выполните все команды по порядку как написано в статье, задайте пароль.

Ваш логин по умолчанию — root.

Читайте также:  Установка emacs для linux

Проверьте файл /etc/hosts: /usr/share/

В нем должны присутствовать строчки:

127.0.0.1 localhost
127.0.1.1 имя Вашего компьютера

источник

Установка lamp debian 8 php

LAMP это акроним от Linux, Apache, MySQL, PHP. В этой инструкции будет описано как установить веб-сервер Apache на Debian 8 с поддержкой PHP5 и MySQL

В этой инструкции Мы будем использовать в качестве hostname (имени сервера) server1.example.com c IP адресом 192.168.0.100.

Эти настройки будут отличаться от ваших, поэтому в процессе настройки измените их.

Установка MySQL

Для начала установим сервер MySQL, для этого в командной строке нужно выполнить:

apt-get install mysql-server mysql-client

При установки у вас спросить пароль для MySQL от пользователя root.

Установка Apache

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

apt-get install apache2-mpm-prefork

После, откройте в браузере http://192.168.0.100 , и на экране будет отображаться стандартная страница с надписью «It works!»

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

Конфигурационный файл (файл с настройками) веб-сервера Apache находится в файле /etc/apache2/apache2.conf

Более подробная документация по настройке находится в файле /usr/share/doc/apache2/README.Debian.gz

Установка PHP

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

apt-get install php5 libapache2-mod-php5

Дополнительно можно установить и некоторые другие пакеты для работы PHP с различными модулями. Для этого выполним команду:

apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

После установки нужно выполнить перезагрузку веб-сервера apache:

systemctl restart apache2.service

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

(функция phpinfo() отображает много полезной информации о настройках веб-сервера и PHP).

Для это нужно выполнить команду:

После чего в браузере можно открыть страницу:

Установка phpMyAdmin

phpMyAdmin это программа предоставляющая веб-интерфейс через который можно управлять базами данных MySQL

Для установки выполним команду:

apt-get install phpmyadmin

Пароль от пользователя который вводился при установке mysql (пароль от пользователя баз данных root)

источник

Предложение от 8host.com

Установка стека LAMP в Debian 10

Стек LAMP – это группа открытых программ, которая необходима для поддержки динамических сайтов и веб-приложений. Акроним LAMP расшифровывается как Linux (операционная система), Apache (веб-сервер), MariaDB (система управления базами данных, которая используется в Debian вместо MySQL) и PHP (серверный язык сценариев для обработки динамического контента).

На вашем сервере уже установлен первый компонент – операционная система Debian, которая является дистрибутивом Linux. Этот мануал поможет установить остальные компоненты стека.

Требования

  • Сервер Debian 10.
  • Пользователь с доступом к команде sudo и базовый брандмауэр (все инструкции можно найти здесь).

1: Установка Apache и настройка брандмауэра

Apache является одним из самых популярных веб-серверов в мире. Он хорошо документирован и широко используется в интернете почти с самого начала его существования. Установить Apache очень легко, пакеты этого веб-сервера доступны в стандартном репозитории. Для установки используйте пакетный менеджер apt:

sudo apt update
sudo apt install apache2

Чтобы запустить команды с правами sudo, нужно ввести пароль текущего пользователя.

Получив правильный пароль, менеджер apt сообщит, какие пакеты он собирается установить и сколько дискового пространства для этого потребуется. Нажмите Y и ENTER, чтобы продолжить.

Примечание: Далее подразумевается, что вы настроили брандмауэр UFW согласно мануалу по начальной настройке сервера.

Теперь нужно проверить настройки брандмауэра UFW. Он поставляется с профилями сервисов, с помощью которых проще изменять его поведение. Просмотрите доступные профили Apache:

Профили WWW управляют трафиком веб-сервера:

Available applications:
. . .
WWW
WWW Cache
WWW Full
WWW Secure
. . .

Профиль WWW Full пропускает трафик на порты 80 и 443.

sudo ufw app info «WWW Full»
Profile: WWW Full
Title: Web Server (HTTP,HTTPS)
Description: Web Server (HTTP,HTTPS)
Ports:
80,443/tcp

Разрешите входящий трафик HTTP и HTTPS:

sudo ufw allow in «WWW Full»

Чтобы убедиться, что брандмауэр поддерживает входящий трафик по порту 80 или 443, посетите внешний IP своего сервера в браузере.

На экране должна появиться стандартная страница Apache для Debian 10:

It works!
This is the default welcome page used to test the correct operation of the Apache2 server after installation on Debian systems. …

Как узнать свой внешний IP-адрес

Существует несколько способов узнать внешний IP-адрес сервера из командной строки.

Во-первых, можно использовать инструменты iproute2:

ip addr show eth0 | grep inet | awk ‘< print $2; >‘ | sed ‘s/\/.*$//’

Команда вернёт несколько адресов, однако сервер может использовать не все, а только один из них; проверьте каждый полученный адрес.

Также можно при помощи curl запросить свой адрес у третьей стороны.

sudo apt install curl
curl http://icanhazip.com

2: Установка MariaDB

Теперь, когда веб-сервер установлен, пришло время установить MariaDB. MariaDB – это система управления базами данных. Она организует и обеспечивает доступ к базам данных, в которых сайт может хранить свою информацию.

MariaDB – это форк MySQL, разработанный сообществом. В Debian 10 метапакет mysql-server, который традиционно использовался для установки сервера MySQL, заменили пакетом default-mysql-server (это метапакет MariaDB)

Читайте также:  Установка gta 5 на mac

MariaDB хорошо работает в большинстве случаев, но если вам нужны функции, доступные только в Oracle MySQL, вы можете установить и использовать пакеты из репозитория, поддерживаемого разработчиками MySQL.

Однако для более долгосрочной совместимости рекомендуется вместо метапакета MySQL установить MariaDB (через пакет mariadb-server).

Чтобы сделать это, введите:

sudo apt install mariadb-server

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

Сценарий задаст ряд вопросов. Сначала нужно указать root-пароль MariaDB. Это учетная запись администратора MariaDB, которая имеет повышенные привилегии. Вы установили MariaDB только что и еще не внесли никаких изменений, этого пароля пока у вас нет, поэтому просто нажмите Enter.

В следующем запросе скрипт предложит настроить пароль root для базы данных. Введите N и нажмите клавишу Enter. В Debian учетная запись root MariaDB тесно связана с автоматизированным обслуживанием системы, поэтому изменять стандартные методы аутентификации этой учетной записи нельзя. Иначе при обновлении пакета БД может повредиться, а доступ к учетной записи root может быть утрачен. Позже мы рассмотрим, как настроить дополнительную учетную запись администратора, если аутентификация сокетов вам не подходит.

На остальные вопросы можно нажать Y и Enter. Это удалит анонимных пользователей и тестовые базы данных, отключит удалённый root логин и обновит текущие настройки MariaDB.

После этого откройте командную строку MariaDB в терминале:

Вы подключитесь к серверу MariaDB в качестве root пользователя базы данных. Вы должны увидеть примерно такой результат:

Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 74
Server version: 10.3.15-MariaDB-1 Debian 10
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
MariaDB [(none)]>

Обратите внимание: вам не нужно было указывать пароль. Это потому, что метод аутентификации администратора по умолчанию в MariaDB — unix_socket, а не пароль. Сначала это может показаться проблемой безопасности, но это делает сервер базы данных более защищенным, поскольку войти в систему как пользователь root MariaDB могут только системные пользователи с привилегиями sudo, подключающиеся из консоли или приложения, работающее с теми же привилегиями. Практически это значит, что вы не сможете использовать аккаунт администратора для подключения с вашего PHP-приложения.

Для повышения безопасности лучше иметь отдельные учетные записи с более узкими привилегиями для каждой базы данных (особенно если вы планируете разместить на своем сервере несколько БД). Давайте создадим базу данных example_database и пользователя example_user (вы можете заменить эти имена другими значениями).

Чтобы создать новую базу данных, выполните следующую команду из консоли MariaDB:

CREATE DATABASE example_database;

Теперь можно создать нового пользователя и предоставить ему полные права на новую базу данных. Следующая команда определяет условный пароль этого пользователя (password), вы должны заменить это значение безопасным паролем.

GRANT ALL ON example_database.* TO ‘example_user’@’localhost’ IDENTIFIED BY ‘password’ WITH GRANT OPTION;

Это предоставит пользователю example_user полные права доступа к БД example_database, в то же время запретив ему создавать или изменять другие базы данных на вашем сервере.

После этого выйдите из оболочки MariaDB:

Вы можете убедиться, что у нового пользователя есть соответствующие права доступа. Снова войдите в консоль MariaDB, на этот раз с помощью новых учетных данных:

Обратите внимание на флаг -p в этой команде, который запрашивает пароль, который вы указали при создании пользователя example_user. После входа в консоль MariaDB убедитесь, что у вас есть доступ к базе данных example_database:

Чтобы выйти из оболочки MariaDB, введите:

На данный момент СУБД настроена, вы можете перейти к установке PHP, последнего компонента стека LAMP.

3: Установка PHP

PHP – это серверный язык сценариев для написания динамических страниц. Он позволяет запускать сценарии, подключаться к БД MariaDB и передавать обработанный контент в браузер для отображения.

PHP также можно установить с помощью менеджера apt. Чтобы установить PHP и несколько вспомогательных пакетов (для настройки взаимодействия с Apache и MariaDB), введите команду:

sudo apt install php libapache2-mod-php php-mysql

В большинстве случаев рекомендуется настроить обработку файлов Apache при запросе каталога. На данный момент Apache сначала обслуживает index.html. Чтобы веб-сервер обслуживал PHP-файлы первыми, нужно открыть файл dir.conf:

sudo nano /etc/apache2/mods-enabled/dir.conf

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

Как видите, файлы index.php находятся в конце строки, а значит, веб-сервер будет обслуживать их в последнюю очередь. Переместите index.php в начало строки DirectoryIndex:

DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

Сохраните и закройте файл (Ctrl-X, Y, Enter).

Теперь перезапустите Apache, чтобы обновить настройки:

sudo systemctl reload apache2

Проверьте состояние apache2 при помощи systemctl:

sudo systemctl status apache2
apache2.service — The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-07-08 12:58:31 UTC; 8s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 11948 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 11954 (apache2)
Tasks: 6 (limit: 4719)
Memory: 11.5M
CGroup: /system.slice/apache2.service
├─11954 /usr/sbin/apache2 -k start
├─11955 /usr/sbin/apache2 -k start
├─11956 /usr/sbin/apache2 -k start
├─11957 /usr/sbin/apache2 -k start
├─11958 /usr/sbin/apache2 -k start
└─11959 /usr/sbin/apache2 -k start

Читайте также:  Установка кондиционера на классику карбюратор

Теперь стек полностью установлен. Но прежде чем ставить на него приложение, его нужно создать виртуальный хост Apache, а затем протестировать и исправить возможные ошибки.

4: Создание виртуального хоста

Веб-сервер Apache в Debian 9 по умолчанию предоставляет один включенный виртуальный хост, который обслуживает каталог /var/www/html. Это делается через конфигурационный файл /etc/apache2/sites-available/000-default.conf. Этого хватит для обслуживания одного сайта, но если вы хотите разместить несколько сайтов, вам нужно создать новые виртуальные хосты.

Создайте структуру каталогов в /var/www для your_domain, а /var/www/html оставьте как каталог по умолчанию, который будет обслуживаться, если запрос клиента не соответствует другим сайтам.

Создайте корневой каталог your_domain:

sudo mkdir /var/www/your_domain

Затем определите права на каталог с помощью переменной $USER:

sudo chown -R $USER:$USER /var/www/your_domain

Затем создайте новый файл в каталоге sites-available с помощью nano или другого редактора:

sudo nano /etc/apache2/sites-available/your_domain.conf

ServerName your_domain
ServerAlias www.your_domain
ServerAdmin webmaster@localhost
DocumentRoot /var/www/your_domain
ErrorLog $/error.log
CustomLog $/access.log combined

В этой конфигурации VirtualHost мы сообщаем, что your_domain нужно обслуживать, используя в качестве корневого каталога /var/www/your_domain. Если вы хотите протестировать Apache без доменного имени, вы можете удалить или закомментировать параметры ServerName и ServerAlias, добавив символ # в начале каждого параметра.

Теперь вы можете использовать a2ensite для включения этого виртуального хоста:

sudo a2ensite your_domain

Возможно, вы захотите отключить веб-сайт по умолчанию, который устанавливается вместе с Apache. Это необходимо, если вы не используете пользовательский домен, потому что в этом случае конфигурация Apache по умолчанию перезапишет ваш виртуальный хост. Чтобы отключить веб-сайт Apache по умолчанию, введите:

sudo a2dissite 000-default

Проверьте ошибки в конфигурации:

sudo apache2ctl configtest

Если ошибок нет, команда вернет:

sudo systemctl reload apache2

Теперь Apache обслуживает домен вашего сайта. Но пока что каталог /var/www/your_domain все еще пуст. Далее мы создадим PHP-скрипт, чтобы протестировать новый сайт.

5: Тестирование стека LAMP

Сейчас нужно убедиться в том, что веб-сервер взаимодействует с PHP. Для этого нужно создать простой сценарий PHP, info.php.

На экране появится пустой файл. Поместите в него такой код:

Сохраните и закройте файл.

Теперь попробуйте открыть его в браузере:

На экране появится веб-страница, содержащая информацию о сервере. Если такая страница появилась, веб-сервер обслуживает файлы PHP.

Важно! После проверки обязательно удалите этот файл, иначе любой пользователь сможет получить доступ к конфиденциальным данным о сервере.

sudo rm /var/www/your_domain/info.php

6: Тестирование соединения базы данных с PHP (опционально)

Если вы хотите проверить, может ли PHP подключаться к MariaDB и выполнять запросы к базе данных, вы можете создать тестовую таблицу с фиктивными данными и запросить ее содержимое из сценария PHP.

Сначала подключитесь к консоли MariaDB с помощью пользователя БД, которого вы создали в разделе 2 данного руководства:

Создайте таблицу по имени todo_list. В консоли MariaDB выполните следующую команду:

CREATE TABLE example_database.todo_list (
item_id INT AUTO_INCREMENT,
content VARCHAR(255),
PRIMARY KEY(item_id)
);

Теперь вставьте в тестовую таблицу несколько строк. Для этого вы можете повторить следующую команду несколько раз, используя разные значения:

INSERT INTO example_database.todo_list (content) VALUES («My first important item»);

Чтобы подтвердить, что данные были успешно сохранены в вашей таблице, выполните:

SELECT * FROM example_database.todo_list;

Вы увидите следующий вывод:

+———+—————————+
| item_id | content |
+———+—————————+
| 1 | My first important item |
| 2 | My second important item |
| 3 | My third important item |
| 4 | and this one more thing |
+———+—————————+
4 rows in set (0.000 sec)

Убедившись, что в тестовой таблице есть данные, вы можете выйти из консоли MariaDB:

Теперь можно создать PHP-скрипт, который будет подключаться к MariaDB и запрашивать контент. Создайте новый PHP-файл в корневом каталоге.

Добавьте в PHP-скрипт следующее содержимое:

query(«SELECT content FROM $table») as $row) <
echo «

  • » . $row[‘content’] . » «;
    >
    echo «
  • «;
    >catch (PDOException $e) <
    print «Error!: » . $e->getMessage() . «
    «;
    die();
    >

    Сохраните и закройте файл, когда закончите редактирование.

    Теперь вы можете получить доступ к этой странице в своем веб-браузере, посетив домен или внешний IP-адрес, который вы указали в конфигурации Nginx. К нему нужно добавить секцию /todo_list.php:

    Вы должны увидеть свой контент, который вы добавили в тестовую таблицу.

    Это означает, что среда PHP может подключаться и взаимодействовать с вашим сервером MariaDB.

    Заключение

    Теперь на сервере Debian установлен программный стек LEMP – надёжная и гибкая платформа для развёртывания сайта или приложения. На этом этапе можно приступать к дальнейшей настойке сервера.

    Например, вы можете зашифровать соединения с вашим сервером. Для этого нужно установить сертификат Let’s Encrypt. Следуя этому мануалу, вы получите бесплатный сертификат TLS/SSL для своего сервера, что позволит ему обслуживать контент через HTTPS.

    источник