Объясните, пожалуйста, несколько моментов начинающему.
Допустим, имеется база MySQL с несколькими сайтами внутри и работающие PHP и Apache.
Проверена работа всего по отдельности и доступ PHP к MySQL (через скрипт index.php в дефолтной папке Apache). Последнее тоже работает, но не могу понять:
1) Как, собственно, сделать, чтобы эти несколько сайтов были доступны по заголовкам запросов браузеров? Должен происходить автоматический запрос через index.php нужных сайтов из базы на основе заголовков запросов или это нужно разруливать через конфигурации виртуальных серверов Apache? Или всё вообще должно реализовывать автоматически без "index.php". К большому сожалению, я совсем не смог найти эту информацию в имеющихся книгах или инете.
2) Можно ли и как через index.php сделать подключение какого-нибудь одного сайта из базы MySQL?
3) Как правильно подключаться через index.php к MySQL?
Имеются два варианта скриптов "index.php" (как я понял):
а) через локальную авторизацию на хосте:
Код: Выделить всё
<?php
$dblocation = "localhost";
$dbname = "*****";
$dbuser = "*****";
$dbpasswd="*****";
$dbcnx = mysql_connect($dblocation, $dbuser, $dbpasswd);
if (!$dbcnx)
{
echo "<p>К сожалению, не доступен сервер MySQL</p>";
exit();
}
if (!mysql_select_db($dbname,$dbcnx) )
{
echo "<p>К сожалению, не доступна база данных</p>";
exit();
}
$ver = mysql_query("SELECT VERSION()");
if(!$ver)
{
echo "<p>Ошибка в запросе MySQL</p>";
exit();
}
echo mysql_result($ver, 0);
?>
б) через серверную авторизацию (?):
Код: Выделить всё
<?php
$server="*****";
//Имеется ввиду возможность связи с внешней по отношению к localhost базе MySQL на другом сервере?
//Почему здесь не проходит локальный IP 127.0.0.1, если он есть в my.cnf "[mysqld] bind-address = 127.0.0.1"?
$user = "*****";
$pass = "*****";
//Далее один трёх вариантов, просьба подсказать разницу.
$dbases="*****";
//$base = "*****";
//$db = "*****";
$connect = mysql_connect($server,$user,$pass)
if (!$connect)
{
echo "<p>К сожалению, не доступен сервер MySQL</p>";
exit();
}
if (!mysql_select_db($dbases,$connect))
{
echo "<p>К сожалению, не доступна база данных</p>";
exit();
}
$ver = mysql_query("SELECT VERSION()");
if(!$ver)
{
echo "<p>Ошибка в запросе MySQL</p>";
exit();
}
echo mysql_result($ver, 0);
?>
4. Даёт ли что-то полезное, кроме проверки подключения к MySQL, следующий скрипт?
Код: Выделить всё
<?php
$dblocation = "*****";
$dbname = "*****";
$dbuser = "*****";
$dbpasswd="*****";
$dbcnx=mysql_connect($dblocation, $dbuser, $dbpasswd);
mysql_select_db($db);
?>
У меня он просто выводит чистую страницу.
Был бы весьма признателен за разъяснения.