Автор Тема: Apache, PHP, MySQL (Mariadb) - установка и настройка [Решено]  (Прочитано 6637 раз)

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
Здравствуйте!
Вопрос, наверно, "частозадаваемый"...
Установлен AltLinux 7.0.5 KDesktop.
В Synaptic есть apache2, php5 и MySQL-server (не установленные).
Настройкой этого комплекта не занимался даже в Windows - только минимум.
Есть 3 файла:
index.html
<b>Hello, HTML!</b>
index.php
<?php
echo "<b>Hello, PHP!</b>";
?>

mysql.php
<?php
if($rc mysql_connect("localhost""root""")) 
    {echo 
"Hello, MySQL!"}
?>


  • Достаточно ли будет просто установить apache2, php5 и MySQL-server из Synaptic, или нужны дополнительные настройки/командная строка?
  • В какую директорию копировать файлы (index.html, index.php, mysql.php)?
  • Стоит ли пользоваться mariadb вместо MySQL?
Как я понял, mariadb ничуть не хуже (даже лучше - быстрее) чем MySQL, к тому же принадлежит к абсолютно свободному ПО и полностью совместима/взаимозаменяема с MySQL.
При установки MySQL-server из Synaptic появляется уведомление:
Будут удалены пакеты
  • akonadi-database-8-mysql
  • kde4-amarok
  • libmariadbembedded
  • mariadb-client
  • mariadb-common
  • mariabd-server
Будут обновлены пакеты
  • MySQL-client
  • akonadi-database-3-sqlite3
  • libqt4-sql-sqlite3
Значит mariadb уже установлена?
« Последнее редактирование: 03.09.2016 23:15:23 от userm »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 361
  • Учиться .... Телепатами не рождаются, ими ....

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
Установил Apache2 из Synaptic. Перезагрузил - localhost пишет It works!
Теперь не могу найти куда помещать index.html
Файл etc/httpd2/conf/httpd2.conf никакого DocumentRoot не содержит (даже закомментированного).
Есть только ServerRoot "/etc/httpd2", но там не получается файл index.html создать.
« Последнее редактирование: 01.09.2016 16:40:08 от userm »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
Установил Apache2 из Synaptic. Перезагрузил - localhost пишет It works!
Теперь не могу найти куда помещать index.html
Файл etc/httpd2/conf/httpd2.conf никакого DocumentRoot не содержит (даже закомментированного).
Есть только ServerRoot "/etc/httpd2", но там не получается файл index.html создать.
https://forum.altlinux.org/index.php/topic,29114.msg203898.html#msg203898
Андрей Черепанов (cas@)

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
Ссылка очень помогла с настройкой Apache (HTML).
Теперь не получается настроить PHP. Установил из Synaptic php5. Значок у файла index.php имеет изображение PHP, но открывается не браузером, а KWrite.
Если index.php открыть браузером, то появляется только сам код, а не результат.
[root@alt ~]# service httpd2 restart делал, и компьютер перезагружал.

Увидел такое: apt-get install apache2-mod_php5. Может в Synaptic надо устанавливать apache2-mod_php5, а не php5, или надо их обоих? Чего же теперь, удалять php5?
« Последнее редактирование: 01.09.2016 22:08:42 от userm »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
mod_php5 нужен. А лучше task-lamp поставить.
Андрей Черепанов (cas@)

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
С названием lamp в Synaptic есть только пакет lamp-server. С "lamp" пока подожду (хотя может и зря).
Попробовал установить apache2-mod_php5 - ничего не изменилось (не хочет index.php открываться в браузере).
« Последнее редактирование: 01.09.2016 22:50:55 от userm »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
Да, lamp-server. Как включить PHP – второй урок Саломатина с http://altlinux.org/LAMP
Андрей Черепанов (cas@)

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
По этой ссылке я хоть немного разобрался с самим Apache.
Что касается PHP - он (Саломатин) там только создал простой index.php и у него все заработало (он не объясняет что делать, если НЕ заработало). Я не знаю даже какие пакеты для этого надо устанавливать, не то что отдельные файлы подправлять.

Если устанавливать lamp-server - надо ли удалять уже установленные пакеты:
  • apache2
  • php5
  • apache2-mod_php5
или они друг другу не мешают?
--------------------------------------------
Странное дело... После установки пакета apache2-mod_php5 перезагрузил компьютер, попробовал зайти на localhost/index.php - был только код (ошибка не пропала). А сейчас, когда я уже задумался об установке LAMP, вдруг само по себе все заработало... браузер адекватно выдал "Hello, PHP!"

Неужели что то (Apache, PHP) так долго загружается? Ведь service httpd2 restart проходит за 1-2 секунды.
Ну да ладно, главное - работает!

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
Думаю, понял свою ошибку.
Просто кликнул по иконке index.php мышкой, он и открылся в KWrite. А в браузере я его и не попробовал открыть.

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
Осталось настроить Mariadb.

Так как Mariadb уже была установлена - никакого пароля root я не указывал. Сомневаясь в работоспособности (не имея пароль root) я все же попробовал:
echo "Hello World";
$rc = mysql_connect("localhost", "root", "");
echo $rc;
Браузер написал только Hello World.

Попробовал
echo "Hello World";
$rc = mysql_connect("localhost", "root", "");
if $rc echo "OK"; else echo "NO";
В браузере оказалась вообще пустая страница.

Не понимая что происходит, решил шагнуть дальше:
echo "Hello World";
$rc = mysql_connect("localhost", "root", "");
$query = "CREATE DATABASE usermtestdb";
$r = mysql_query($query);
echo $r;
Результат - Hello World (и ничего больше).

[root@alt ~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 14
Server version: 5.5.34-MariaDB-alt0.M70P.1 (ALT Linux)

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.02 sec)

MariaDB [(none)]>
Никакой базы usermtestdb нету.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
php5-mysqli стоит?
Андрей Черепанов (cas@)

Оффлайн userm

  • Участник
  • *
  • Сообщений: 68
Цитировать
php5-mysqli стоит?
php5-mysqli не стоял, но теперь установил. Результат не изменился - PHP ничего внятного не выдает.

Зато в этот раз попробовал консольный вариант:
[root@alt ~]# mysql -uroot -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.34-MariaDB-alt0.M70P.1 (ALT Linux)

Copyright (c) 2000, 2013, Oracle, Monty Program Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)

MariaDB [(none)]> create database usermtestdbcon;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| usermtestdbcon     |
+--------------------+
5 rows in set (0.00 sec)

MariaDB [(none)]> drop database usermtestdbcon;
Query OK, 0 rows affected (0.03 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)

MariaDB [(none)]>
Все прекрасно отработало.

Такие вещи как
mysql_secure_installation
mysqladmin
не пробовал.

Но если работает в консоли, вероятно должно работать и в PHP...
« Последнее редактирование: 03.09.2016 16:46:49 от userm »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
Делайте обработку ошибок подключения к базе данных и выполнения запросов.
Андрей Черепанов (cas@)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 160
    • Домашняя страница
Не факт. Аутентификация в консоли понятна, а в PHP требует заведения пользователя.
Андрей Черепанов (cas@)