На днях перед мной встала на первый взгляд проста задача — установить LAMP (Linux + Apache + MySQL + PHP) на OrangePi One. Все бы хорошо если бы не пришлось мучаться с переустановкой прошивка на Orange Pi One т.к. Phpmyadmin и Mysql никак не находиле общий язык и отказывались дружить. После долгих поисков инструкции решил сделать мануал сам.
Установка LAMP (Linux, Apache, MySQL, PHP) на OrangePi One
Итак, вот как установить LAMP (Linux + Apache + MySQL + PHP) на OrangePi One.
РЕКОМЕНДУЕМ:
Linux-сервер на микрокомпьютере Omega 2
Установка прошивки OrangePi One
Скачиваем образ Armbian Ubuntu 18.04+ для OrangePi One с официального сайта
При помощи утилиты Rufus для Windows устанавливаем прошивку на microSD
При первом старте логин ‘root’ а пароль ‘1234’.
Дальше в принудительном порядке вы поменяете пароль и будет создание нового пользователя
Установка LAMP (Linux + Apache + MySQL + PHP) на OrangePi One
Подключаемся к нашей OrangePi при помощи SSH/HDMI/UART.
Устанавливаем Apache + PHP:
1 |
$ apt-get install apache2 php libapache2-mod-php |
Делаем рестарт Apache:
1 |
$ service apache2 restart |
Чтобы включить Htaccess нужно изменить конфиг файл:
1 |
$ nano /etc/apache2/sites-enabled/000-default |
меняем везде строку
1 |
AllowOverride None |
на
1 |
AllowOverride ALL |
Установка MySQL-сервера:
1 |
$ apt-get install mysql-server mysql-client php-mysql |
После установки пароля для root пользователя нажимаем Enter и ждем окончания установки.
Установка PHPMYADMIN:
1 |
$ apt-get install phpmyadmin |
1 2 3 4 5 6 7 8 9 10 11 12 |
The phpmyadmin package must have a database installed and configured before it can be used. This can be optionally handled with dbconfig-common. If you are an advanced database administrator and know that you want to perform this configuration manually, or if your database has already been installed and configured, you should refuse this option. Details on what needs to be done should most likely be provided in /usr/share/doc/phpmyadmin. Otherwise, you should probably choose this option. |
Есть кнопка ОК, стоит подождать 2 минуты чтобы все было хорошо ( не знаю почему, но у меня только с 5 попытки получилось)
Оказалось, что «password» в MySQL 5.7 переименовали в «authentication_string». Пришлось модифицировать запрос:
1 |
SELECT host, user, authentication_string from mysql.user; |
Обновляем пароль root:
1 2 |
UPDATE mysql.user SET authentication_string=PASSWORD('your_new_password') WHERE User='root'; |
Создаем нового пользователя с административными правами, где ‘pmauser’ — имя аккаунта:
1 2 3 |
$ mysql -p -u root CREATE USER 'pmauser'@'%' IDENTIFIED BY 'password_here'; GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION; |
Сделаем помощь Apache, подключив конфигурации для веб-сервера от phpmyadmin.
Для этого выполним:
1 |
$ nano /etc/apache2/apache2.conf |
И в самый конец файла вставим:
1 |
Include /etc/phpmyadmin/apache.conf |
Нажимаме сочитание клавиш «Ctrl + X» затем Y проверяем путь и подтверждаем Enter.
В PHPMYADMIN может появится ошибка из-за новой версии
1 2 3 4 5 6 7 8 9 10 11 |
(Warning in ./libraries/sql.lib.php#601 count(): Parameter must be an array or an object that implements Countable Backtrace ./libraries/sql.lib.php#2038: PMA_isRememberSortingOrder(array) ./libraries/sql.lib.php#1984: PMA_executeQueryAndGetQueryResponse( array, boolean true, string 'alternativegirls', string 'tgp_photo',......) |
В строке 613 функция count всегда принимает значение true, поскольку после нее закрывающая скобка отсутствует $analyzed_sql_results[‘select_expr’]. Выполнение приведенных ниже замен решает эту проблему, тогда вам нужно будет удалить последние закрывающие скобки в строке 614, поскольку теперь они являются дополнительными скобками.
Редактируем файл:
1 |
$ nano /usr/share/phpmyadmin/libraries/sql.lib.php |
Заменяем:
1 |
(count($analyzed_sql_results['select_expr'] == 1) |
На: (Переместить скобку перед == )
1 |
(count($analyzed_sql_results['select_expr']) == 1 |
1 2 3 |
$mysql -u root -p //Команда для входа в БД где 'root' - логин exit; //Выход из БД $service mysql restart //Перезапуск БД |
РЕКОМЕНДУЕМ:
Использование Android в связке с Linux
На этом установка LAMP на OrangePi One завершена. Надеюсь кому-нибудь данный мануал поможет.