Что же такое локальный сервер и зачем он нам нужен?

Локальный сервер - это набор программ, которые позволяют разрабатывать сайт на локальном компьютере без подключения к Интернету. Он аналогичен серверам, которые расположены у хостеров. Если вы создаете сайт используя только html-страницы с дизайном CSS, то никакой локальный сервер вам не нужен. Но если сайт динамичный, т.е. создан с использованием Php, Perl, MySQL, скриптов и т.д., то для его отладки и тестирования понадобится локальный сервер.

Часть 1. Установка XAMPP

Я уже писал о том, что мы будем использовать в качестве локального сервера XAMPP. Переходим по этой ссылке и выбираем XAMPP для нашей платформы. Моя операционная система Windows (у вас наверное тоже), поэтому жмем на XAMPP for Windows XAMPP и попадаем на страницу, где находим следующий блок:

XAMPP

Выбираем для скачивания Installer. После того, как файл скачается, запускаем его. Вообще весь дальнейший процесс установки не требует никакого вмешательства со стороны пользователя, кроме нажимания кнопки «Next», но все таки я распишу его более подробно. После того, как мы запустили инсталятор, у нас на экране появляется такое окно:

XAMPP

Русского языка в инсталляторе нет, поэтому оставляем английский, жмем «ОК».

XAMPP

Жмем «Next».

XAMPP

Здесь нам предлагают выбрать, куда мы будем устанавливать XAMPP, оставляем без изменений. Жмем «Next».

XAMPP

Здесь нам предлагают выбрать устанавливаемые компоненты. Оставляем как есть, жмем «Install».

XAMPP

Через пару-тройку минут инсталяция закончена. Жмем «Finish». У нас загружается вот такое окошко, которое называется контрольной панелью, а на рабочем столе появляется значок XAMPP.

XAMPP

 Если панель не загрузилась, то для ее загрузки щелкаем по значку. Здесь мы будем запускать и останавливать серверы Apache и MySQL. Для старта сервера необходимо нажать на кнопку «Start». Нажимаем и вот что у вас должно получиться:

XAMPP

Мы будем запускать только Apache и MySQL. Как видно из скриншота, Apache использует 80 порт. Этот же порт по умолчанию использует Скайп и если у вас загружен Скайп и порт 80 занят, то Apache не загрузится. Поэтому идем в Скайп: Инструменты->Настройки->Дополнительно->Соединение и убираем галочку с «Использовать порты 80 и 443 в качестве входящих альтернативных». Ну и в заключении хочу добавить, что для остановки сервера мы будем нажимать кнопку «Stop». Но пока оставляем все загруженным. Кстати, загрузку, остановку и перезагрузку XAMPP можно осуществлять и с помощью специальных приложений, которые находятся в папке C:\xampp\ это xampp_start.exe, xampp_stop.exe и xampp_restart.exe.

Настройка XAMPP

Установка не должна была вызвать каких-то затруднений. Переходим к настройке. Запускаем серверы Apache и MySQL и замечаем в строке Apache кнопку «Admin», жмем на нее. Загружается такое окошко:

XAMPP

Русский язык к сожалению не представлен, выбираем английскую версию, как самый универсальный вариант. Но вы можете выбрать другой понравившийся вам язык. Попадаем сюда:

XAMPP

Это и есть веб-интерфейс XAMPP. Нам здесь важны два пункта. Первый - это Security:

XAMPP

здесь находятся настройки безопасности. Если перейти по ссылке http://localhost/security/xamppsecurity.php можно будет задать пароль для администратора баз данных MySQL и там же можно установить пароль на директорию XAMPP для ограничения доступа из локальной сети:

XAMPP

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

Создаем базу данных MySQL

Второй важный нам пункт это phpMyAdmin. Заходим и попадаем на следующую страницу:

XAMPP

Вот ради этого мы и городили весь наш огород. phpMyAdmin — веб-приложение для администрирования MySQL, а MySQL - это система управления базами данных, а наш будущий сайт - это и есть та самая база данных, которой будет управлять MySQL. Кажется, я тут все понятно изложил, а в подробности можно пока особо не вникать. Сюда мы зашли только по одной причине - у нас пока еще нет базы данных, так давайте ее создадим. Каждая база данных должна иметь свое уникальное название, я уже придумал название для нашей базы данных, предлагаю назвать ее site. Выбираем закладку «Базы данных», внизу в окошке «Новая база данных» пишем site, в окошке «Сравнение» выбираем utf8_general_ci - это кодировка для нашей базы. Жмем «Создать».

Создаем пользователя базы данных MySQL

Теперь нам нужно назначить пользователя для только что созданной базы. Идем в «Привилегии»

XAMPP

Жмем на «Добавить нового пользователя» и заполняем следующие поля:

Имя пользователя - любое слово состоящее из английских букв
Хост - Localhost
Пароль - любое сочетание английских букв и цифр

Многие начинающие веб-мастера для простоты запоминания и пароль, и имя пользователя делают таким же, как название базы данных, в нашем случае это было бы site. Это оказывается огромной прорехой в безопасности. Поэтому, когда будете создавать собственный сайт не поленитесь придумать другое имя пользователя, а пароль сгенерируйте с помощью кнопки «Генерировать», распечатайте и сохраните в надежном и безопасном месте. Вот пример такого заполнения:

XAMPP

Но так как у нас с вами обучающий курс, я поступлю как самый настоящий начинающий веб-мастер, которым, кстати, и являюсь, и заведу имя пользователя и пароль site.

Назначаем привилегии пользователю базы данных MySQL

Теперь необходимо назначить привелегии созданному пользователю, в Глобальных привелегиях жмем «Отметить все» и говорим «Ok».

Часть 2. Настройка виртуальных хостов

Редактируем файл httpd-vhosts.conf

- Как, еще не все? - спросите вы, увы, нет, подходим к самому интересному. Для того чтобы мы могли просматривать в браузере свой сайт, необходимо настроить виртуальный хост. Для этого мы отправимся редактировать файл C:\xampp\apache\conf\extra\httpd-vhosts.conf. Открываем файл с помощью Notepad++ или обычным блокнотом. Сейчас в этом файле имеется некоторая информация, все строки которой начинаются с #.  Мы ее не трогаем, а ниже добавляем следующий код:

NameVirtualHost 127.0.0.1

<VirtualHost 127.0.0.1>
  ServerName localhost    
  ServerAdmin admin@localhost  
</VirtualHost>

Здесь мы указываем имя виртуального хоста и описываем локальный хост. Теперь нам надо добавить данные, чтобы заработал наш сайт. Наш сайт будет называться также, как мы назвали базу данных - site, но названия сайта и базы данных не обязательно должны совпадать. Конечно, наш сайт должен будет называться что-то типа www.site.ru, но нам нет необходимости указывать полное имя сайта, так как это название будет использоваться только на нашем локальном компьютере, а нам нет нужды писать лишние буквы, поэтому и назовем его просто site. Под тем кодом, который мы только что добавили, добавляем еще код:

<VirtualHost 127.0.0.1>
  ServerName site
  ServerAlias www.site
  ServerAdmin admin@site.ru
  DocumentRoot "C:/xampp/htdocs/site/www/"
  ErrorLog "C:/xampp/htdocs/site/logs/error.log"
  CustomLog "C:/xampp/htdocs/site/access.log" combined
<Directory "C:/xampp/htdocs/site/www/">
  AllowOverride All
  Order allow,deny
  Allow from all
</Directory>
</VirtualHost>

Где:

ServerName site  - Название нашего сайта, которое можно писать без .ru
ServerAlias www.site - Альтернативное название сайта
ServerAdmin admin@site.ru - Почта администратора ресурса
DocumentRoot "C:/xampp/htdocs/site/www/" - Папка с файлами сайта
ErrorLog "C:/xampp/htdocs/site/logs/error.log" - Журнал ошибок
CustomLog "C:/xampp/htdocs/site/access.log" combined - Журнал посещений

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

Редактируем файл hosts

Осталось добавить наш сайт в базу данных доменных имен нашей операционной системы Windows. Для этого в Windows 7 заходим в папку C:/Windows/ и находим в ней файл notepad.exe, выделяем его и жмем правую кнопку мыши, выбираем «Запуск от имени администратора», затем Файл >> Открыть выбираем папку C:/Windows/Sistem32/drivers/etc/ а в поле «Имя файла» руками вбиваем слово hosts. Если все сделали правильно, откроется файл hosts. В нем будет некоторая информация, также закомментированная решеткой #. Ниже добавляем следующую конструкцию:

127.0.0.1 site

Если будете создавать еще сайт, скажем site2, не забываем добавлять в этот файл:

127.0.0.1 site2

Делаем почтовую заглушку sendmail для XAMPP

Для того, чтобы иметь возможность просматривать письма при тестировании формы обратной связи, необходимо сделать так называемую почтовую заглушку. Делается это следующим образом, открываем Notepad++, создаем новый документ, выбираем синтаксис PHP а кодировку UTF-8, затем помещаем в этот документ следующий код:

<?php

//папка в которую будем складывать почту
define('DIR','c:/xampp/tmp/sendmail/');

//получаем из потока тело письма
$stream = '';
$fp = fopen('php://stdin','r');
while($t=fread($fp,2048))
    {
    if( $t===chr(0) )
        break;
    $stream .= $t;
    }
fclose($fp);

//Сохраняем в файл
$fp = fopen(mkname(),'w');
fwrite($fp,iconv("UTF-8","CP1251",$stream));
fclose($fp);

//Функция присвоения имени файлу
function mkname($i=0)
    {
    $fn = DIR.date('Y-m-d_H-i-s_').$i.'.eml';
    if ( file_exists($fn) )
        return mkname(++$i);
        else return $fn;
    }

?>

Сохраняем файл под именем sendmail.php в папку C:\xampp\sendmail\. Затем в папке C:\xampp\tmp\ создаем папку sendmail.

В файле php.ini (C:\xampp\php) заменяем строчку:

sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"

на строчку:

sendmail_path = C:\xampp\php\php.exe c:\xampp\sendmail\sendmail.php

Перезапускаем XAMPP. Если вы все сделали правильно, все отправленные письма можно будет просмотреть в папке C:\xampp\tmp\sendmail\. Но пока у нас нет обратной связи, поэтому, будем проверять тогда, когда ее создадим.

Создание папки для нашего сайта

Мы столько уже сделали, придумали название, даже прописали пути к нашему сайту, а до сих пор даже не создали для него папку. Настала пора этим заняться.

Все сайты, которые мы будем делать, мы будем размещать в папке C:/xampp/htdocs/. Теоретически, не обязательно использовать именно эту папку, можно использовать любую другую, но для этого надо будет изменить пути в файле httpd-vhosts.conf. Но мы не будем отходить от традиций. Давайте создадим нашу папку site в папке htdocs. А теперь в папке C:/xampp/htdocs/site/ создадим еще две папки: www и logs. В папке www будут находиться все фалы нашего сайта, которые мы будем потом переносить на хостинг. Папка logs будет содержать два файла - журнал ошибок и журнал посещений.

Ну вот, собственно, и все. На этом наш первый урок можно считать оконченным. Я засек время, которое мне понадобилось на то, чтобы проделать все, что описано в этом уроке. У меня получилось примерно 10 минут. Добавим время на скачивание дистрибутива XAMPP, ну пусть 5 минут. Итого, получается, что наше первое занятие мы выполнили за 15 минут. Время на ознакомление с материалом я не учитываю, так как наш слоган "Сайт за один день!" подразумевает не обучение этому процессу за один день, а время, за которое мы создадим сайт. До встречи на следующем уроке.

Поделитесь ссылкой

Статистика

Яндекс цитирования
© 2011 - 2023 Школа MODX
Напишите нам в Telegram