Сказ о том, как lamp на debian поднимался
Сперва казалось, что все должно устанавливаться и запускаться чуть ли ни одной командой. В виндах и маках для этих целей есть удобные сборочки, wamp и mamp, которые устанавливаются парой кликов и не требуют никаких настроек. Но сервер на виндах это дорого и неудобно, да и непонятно где заказывать.
Выбор пал на облачный хостинг Clodo, который я использовал ранее и который казался мне надежным. Забыл проплатить сервер, они прислали сообщение что пару дней удалят мою машину, если я ее не проплачу. Проплатить сервер не проблема. Они не учли одного - сообщение попало в спам, и когда я его прочитал, они уже удалили мой сервер.
При установке руководствовался замечательным гайдом от digital ocean. Сначала пробовал установить все без помощи руководств, думая что никаких подводных камней тут не встретить. Ошибался, один вечер убил пытаясь все установить самостоятельно, проблемы возникали различные, например было непонятно, какой пароль по умолчанию был установлен для базы данных. Руководствуюясь гайдами можно все установить минут за 20.
Установка системы
Во всех соверменных хостингах установка системы с настройками по умолчанию совершается одной кнопкой. Как установить систему на VPS этот гайд не расскажет. Я установил на Clodo автоматически Debian.
Соединяемся по ssh с сервером
Если ssh не установлен, устанавливаем его и открываем доступ к порту
sudo apt-get update
sudo apt-get install openssh-server
sudo ufw allow 22
Проверяем версию linux
root@6781-2:~# cat /etc/*-release
PRETTY_NAME="Debian GNU/Linux 7 (wheezy)"
NAME="Debian GNU/Linux"
VERSION_ID="7"
VERSION="7 (wheezy)"
ID=debian
ANSI_COLOR="1;31"
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="http://bugs.debian.org/"
Установка Apache
apt-get install apache2
Заходим на айпи сервера, видим надпись - "it works!".
Ставим mysql
apt-get install mysql-server
Установщик попросит задать пароль пароль на root доступ к базе данных
Чтобы закончить установку mysql вводим:
mysql_secure_installation
Консоль запросит пароль root от базы данных. Тут можно выбрать откуда давать доступ: только с localhost или отовсюду
Чтобы зайти в mysql базу данных надо ввести mysql -u root -p. Причем пароль в комманде не указывается, а если же его указать, программа подумает что мы хотим присоединиться к пазе данных, название которой соответствует нашему паролю.
Установим php
apt-get install php5 php-pear php5-mysql
Перезагрузим апач
service apache2 restart
Проверяем что php работает
Создаем файл info.php в директории /var/www (директория веб сервера по умолчанию)
nano /var/www/info.php
С содержимым
<?php
phpinfo();
?>
И проверяем через браузер: http://yourip/info.php
Ставим phpmyadmin
sudo apt-get install phpmyadmin
При установке надо ввести root пароль от базы. После установки нужно не забыть прописать phpmyadmin в apache:
sudo nano /etc/apache2/apache2.conf
В конец файла добавляем строку
Include /etc/phpmyadmin/apache.conf
Перезагрузим апач
service apache2 restart
Теперь можно заходить в phpmyadmin по адресу http://youripaddress/phpmyadmin
Удаленный доступ к базе данных
Для того, чтобы программы могли соединяться с базой удаленно пришлось закомментировать строку в файле /etc/mysql/my.cnf
#bind-address 127.0.0.1
Теперь доступ к mysql извне открыт и надо создать нового пользователя с правами на удаленный доступ (или установить права у уже созданного). Желательно, чтобы у этого пользователя не было доступа к системным базам данным, а только к тем, которые нужны.
shell> mysql --user=root mysql
CREATE USER 'video'@'localhost' IDENTIFIED BY 'hereyourpassword';
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE
ON echoprint.*
TO 'video'@'localhost';
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE
ON echoprint.*
TO 'video'@'%';
FLUSH PRIVILEGES;
Список используемой литературы
Доступ к базе отовсюду
Как устанавливать phpmyadmin на debian