<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="./style/manual.en.xsl"?>
<!-- English Revision: 1690345 $ -->
<!-- Russian translation : Aleksey Novoselov -->

<!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->

<manualpage metafile="getting-started.xml.meta">

  <title>Начало работы</title>

<summary>
<p>Если вы абсолютный новичок в работе с HTTP сервером Apache или запуске 
веб-сайтовor вообще, вы можете не знать с чего начать и какие вопросы задавать.
Этот документ познакомит вас с основами.</p>
</summary>

<section id="clientserver">
<title>Клиенты, Серверы и URL'ы</title>

<p>
Адреса в Интернете записываются с помощью URL - Uniform Resource Locators
(унифицированный указатель ресурса) - который указывает на используемый протокол
(например, <code>http</code>), имя сервер (например, <code>www.apache.org</code>),
URL-путь (например, <code>/docs/current/getting-started.html</code>) и возможно
строку запроса (например, <code>?arg=value</code>), используемую для передачи
серверу дополнительных аргументов.
</p>

<p>Клиент (например, браузер) подключается к серверу (например, вашему серверу
Apache), используя определённый протокол, и отправляет <strong>запрос</strong>
на ресурс, используя URL-путь.</p>

<p>URL-путь может обозначать множество вещей на севрере. Это может быть файл
(как <code>getting-started.html</code>), обработчик
(как <a href="mod/mod_status.html">server-status</a>) или файл программы
(как <code>index.php</code>). Мы рассмотрим это подробней ниже, в разделе
<a href="#content">Содержание сайта</a>.</p>

<p>
Сервер отправляет <strong>ответ</strong>, содержащий код состояния и,
опционально, текст ответа.
Код состояния показывает был ли запрос успешно обработан и если не был, какая
ошибка произошла. Это говорит клиенту что он должен делать с ответом.
Вы можете прочитать о возможных кодах состояни в
<a href="http://wiki.apache.org/httpd/CommonHTTPStatusCodes">HTTP Server
wiki</a>.</p>

<p>Детали транзакции и условия возникновения ошибки записываются в лог-файлы.
Это описывается гораздо подробней ниже, в разделе <a
href="#logs">Лог-файлы и Решение проблем</a> section.</p>

</section>

<section id="dns">
<title>Имена компьютеров and DNS</title>

<p>Для того чтобы соединиться с сервером, клиент должен разрешить имя сервера
в IP адрес - место в Интернете где находится сервер. Таким образом, для того
что бы ваш сервер был доступен, необходимо что бы его имя было в DNS.</p>

<p>Если вы не знаете как это сделать, вам нужно обратиться к сетевому
администратору или провайдеру, что бы они сделали это для вас.
</p>

<p>Несколько имён имён компьютеров могут указывать на один и тот же IP-адрес,
а один физический физический сервер может имет больше одного IP-адреса.
Таким образом на одном физическом сервере вы можете запустить больше одного
сайта с помощью функции <a href="vhosts/">виртуальные хосты</a>.</p>

<p>Если вы тестируете сервер, не имеющий выхода в Интернет, можете поместить
имена хостов в файл hosts для того что бы имя разрешалось локально.
Например, вы можете добавить запись для отправки запросов к
<code>www.example.com</code> на локальный компьютер, для тестирования.
Эта запись выглядить как то так:</p>

<example>
127.0.0.1 www.example.com
</example>

<p>Файл, скорее всего, расположен в <code>/etc/hosts</code> или 
<code>C:\Windows\system32\drivers\etc\hosts</code>.</p>

<p>Узнать больше о файле hosts вы можете в<a
href="http://en.wikipedia.org/wiki/Hosts_(file)">Wikipedia.org/wiki/Hosts_(file)
</a>, подробней о DNS в
<a href="http://en.wikipedia.org/wiki/Domain_Name_System">Wikipedia.org/wiki/Domain_Name_System</a>.</p>
</section>

<section id="configuration">
<title>Конфигурационые файлы и Директивы</title>

<p>Apache HTTP сервер настроен с помощью простых текстовых файлов.
Эти файлы могут располагаться в разных местах, в зависимости от того как вы 
установили сервер. Общие места расположения файлов перечислены
<a href="http://wiki.apache.org/httpd/DistrosDefaultLayout">в httpd wiki</a>.
Если вы установили httpd из исходников, то по умолчанию конфигурационные файлы
расположены в папке <code>/usr/local/apache2/conf</code>.
По умолчанию файл конфигурации называется <code>httpd.conf</code>.
Это тоже может варьироваться в сторонних дистрибутивах сервера.
</p>

<p>Конфигурация часто разбивается на несколько небольших файлов,
для удобства управления. Эти файлы загружаются через директиву <directive
module="core">Include</directive>. Имена или расположения этих конфигурационных
файлов могут сильно отличаться от одной установки к другой.

Расположите и разделите эти файлы так как имеет смысл для <strong>вас</strong>.
Если расположение файлов по умолчанию, не имеет смысла для вас,
не стесняйтесь изменить его.

<p>Сервер настроен путём размещения <a href="mod/quickreference.html">
конфигурационных директив</a> в этих конфигурационных файлах.
Директива - это ключевое слово с одним или несколькими аргументами,
устанавливающими его значение.
</p>

<p>На вопрос "<em>Где я должен прописать эти директивы?</em>" обычно отвечают
"<em>Там где ты хочешь использовать эту директиву.</em>"

Если это глобальная настройка, она должна располагаться в конфигурационном файле
вне разделов <directive type="section" module="core">Directory</directive>,
<directive type="section" module="core">Location</directive>, <directive
type="section" module="core">VirtualHost</directive> или других разделов.
Если настройка относится только к конкретному каталогу, значит она должна быть
внутри секции <directive type="section" module="core">Directory</directive>,
которая описывает этот каталог, и так далее.
Смотри <a href="sections.html">Configuration Sections</a> с подробным описанием
этих разделов.</p>

<p>В дополнение к основному файлу конфигурации, некоторые директивы могут
располагаться в файлах <code>.htaccess</code>, расположенных в папках с
контентом.
Файлы <code>.htaccess</code> в первую очередь предназначены для людей у которых
нет доступа к главному конигурационному файлу сервера.
Подробней о файлах <code>.htaccess</code> можно прочитать в <a
href="howto/htaccess.html"><code>.htaccess</code> howto</a>.</p>

</section>

<section id="content">
<title>Web Site Content</title>

<p>Содержимое сайта может принимать различные формы, но в широком смысле
разделяется на статический и динамический контент.</p>

<p>Статический контент это, например HTML файлы, CSS файлы и другие файлы,
которые просто лежат на диске. <directive
module="core">DocumentRoot</directive> директива directive указывает в каком 
месте файловой системы вы должны разместить эти файлы. Эта директива 
используется глобально или в рамках виртуального хоста. Посмотрите в
конфигурационных файлах что бы узнать как именно эта директива используется
на вашем сервере.
</p>

<p>Обычно, когда запрашивается каталог, без указания имени файла, то будет
отдан документ с именем <code>index.html</code>. Например, если директиве
<code>DocumentRoot</code> установлено значение <code>/var/www/html</code> и 
и приходит запрос на адрес <code>http://www.example.com/work/</code>, то файл
расположенный по пути <code>/var/www/html/work/index.html</code> будет отдан
клиенту.</p>

<p>Динамический контент - это всё что генерируется во время запроса и может 
изменяться от запроса к запросу. Существует множество способов создания
динамического контента. Различные <a href="handler.html">обработчики</a>
доступны для генерации содержимого. Могут быть написаны специальные
<a href="howto/cgi.html">CGI программы</a> для генерации контента на сайте.</p>

<p>Для написания кода с разнообразным функционалом могут использоваться модули
сторонних производителей, такие как mod_php. Множество сторонних приложений,
написаных на различных языках программирования, и утилит доступны для скачивания
и установки на HTTP сервер Apache.
Поддержка сторонних продуктов выходит за рамки этой документации. Вам нужно
будет самостоятельно найти их документацию или форумы поддержки где вы сможете
получить ответ на свой вопрос.</p>
</section>

<section id="logs">
<title>Файлы журналов и устранение неполадок</title>
<p>Для вас, как администратора HTTP сервера Apache, самые ценные активы - файлы
журналов, в частности журнал ошибок. Решение любой проблемы без журнала ошибок
можно сравнить с вождением с закрытими глазами.
</p>

<p>Расположение журнала ошибок задаётся директивой <directive module="core">
ErrorLog</directive>, которая может быть установлена глобально или для каждого
виртуального хоста. Записи в журнале ошибок расскажут что пошло не так и когда.
Зачастую смогут подсказать как это исправить. Каждая запись в журнале ошибок
содержит код ошибки, по которому вы можете поискать в интернете более подробное
описание того как решить проблему.
Вы также можете настроить журнал ошибок, что бы в него запусывался лог-ID,
который можно сопоставить с записями в журнале доступа, что бы можно было
выяснить какой запрос вызвал ошибку.
</p>

<p>Больше о логировании вы можете узнать в документации <a href="logs.html">
</a>.</p>
</section>

<section id="other">
<title>Что дальше?</title>

<p>Теперь, когда за спиной есть необходимые знания, пора двигаться дальше.
</p>

<p>Этот документ содержит только базовую информацию. Мы надеемся, что он поможет
вам начать, но есть множество других вещей, о которых вам необходимо будет знать.
</p>

<ul>
<li><a href="http://httpd.apache.org/download.cgi">Загрузки</a></li>
<li><a href="install.html">Установка</a></li>
<li><a href="configuring.html">Настройка</a></li>
<li><a href="invoking.html">Старт</a></li>
<li><a href="http://wiki.apache.org/httpd/FAQ">Часто задаваемые вопросы</a></li>
</ul>

</section>

</manualpage>
