Как найти index html на сервере

Для администратора Linux важно знать, как обращаться с веб-сервером Apache. В этой статье вы узнаете немного теории о логике работы Apache,  а также как его установить и запустить, как создать виртуальные хосты и применить к ним контексты SELinux. 

Базовая настройка сервера Apache

Настроить базовый сервер Apache несложно. Он состоит из нескольких простых шагов:

  1. Установить необходимые пакеты.
  2. Определить основной файл конфигурации.
  3. Создать некоторый контент веб-сервера.

Установка необходимых пакетов

Сервер Apache предоставляется через несколько различных пакетов. Базовый пакет – httpd; этот пакет содержит все, что нужно для рабочего, но базового веб-сервера. Также есть несколько дополнительных пакетов. Для полного обзора пакетов вы можете использовать команду yum search http или использовать yum install httpd для установки базового пакета.

Обратите внимание, что команда yum search http выдает много пакетов. Это связано с тем, что веб-сервер Apache является модульным, а различные модули предоставляются через дополнительные пакеты yum.

Вместо использования отдельных пакетов вы также можете использовать yum groups. Команда yum groups list предоставляет обзор всех доступных групп yum, а yum group Basic Web Server предоставляет все необходимое для установки веб-сервера Apache и все необходимые зависимости. Чтобы выполнить установку Apache используйте yum groups install “Basic Web Server”.

Определение основного файла конфигурации

Конфигурация веб-сервера Apache проходит через различные файлы конфигурации.  Основной файл конфигурации Apache – /etc/httpd/conf/httpd.conf. В этом файле указано много параметров. Самый важный параметр, который нужно понять для настройки базового веб-сервера, – это параметр DocumentRoot. Этот параметр указывает местоположение по умолчанию, где веб-сервер Apache ищет контент.

Другим важным параметром конфигурации является ServerRoot. Он определяет каталог по умолчанию, где Apache будет искать свои файлы конфигурации. По умолчанию для этой цели используется каталог /etc/httpd, но могут использоваться и другие каталоги.

Вы заметите, что в httpd.conf упоминаются многие другие файлы конфигурации. Использование дополнительных файлов конфигурации позволяет приложениям легко устанавливать snap-in файлы, которые будут включены сервером Apache из пакетов RPM. Все имена этих файлов конфигурации относятся к ServerRoot в /etc/httpd.

В листинге 1 показана часть содержимого файла конфигурации httpd.conf.

Листинг 1

[root@kvm ~]# cat /etc/httpd/conf/httpd.conf | grep -v '#'

ServerRoot "/etc/httpd"

Listen 80

Include conf.modules.d/*.conf

User apache
Group apache


ServerAdmin root@localhost


<Directory />
    AllowOverride none
    Require all denied
</Directory>


DocumentRoot "/var/www/html"

<Directory "/var/www">
    AllowOverride None
    Require all granted
</Directory>

<Directory "/var/www/html">
    Options Indexes FollowSymLinks

    AllowOverride None

    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog "logs/error_log"

LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
    LogFormat "%h %l %u %t "%r" %>s %b" common

    <IfModule logio_module>
      LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i" %I %O" combinedio
    </IfModule>


    CustomLog "logs/access_log" combined
</IfModule>

<IfModule alias_module>


    ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

</IfModule>

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule mime_module>
    TypesConfig /etc/mime.types

    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz



    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
</IfModule>

AddDefaultCharset UTF-8

<IfModule mime_magic_module>
    MIMEMagicFile conf/magic
</IfModule>


EnableSendfile on

IncludeOptional conf.d/*.conf
[root@kvm ~]#

Создание контента веб-сервера

После определения  DocumentRoot веб-сервера вы знаете все, что нужно знать для настройки базового веб-сервера. По умолчанию веб-сервер Apache ищет файл с именем index.html и представляет содержимое этого документа клиентам, использующим браузер для доступа к веб-серверу. Достаточно настроить этот файл с очень простым содержанием; подойдет только строка типа «Добро пожаловать на мой веб-сервер».

Чтобы протестировать веб-сервер, вы можете запустить браузер. Браузер Firefox установлен по умолчанию во всех графических установках RHEL / CentOS. Если ваш сервер не поддерживает графический интерфейс, используйте yum install elinks для установки текстового браузера elinks.

Этот браузер не позволяет загружать сложные веб-страницы, но он позволяет вам проверить работу веб-сервера. Ниже на скриншоте   показано, как выглядит интерфейс elinks.

В упражнении 1 вы узнаете, как настроить базовый веб-сервер.

Упражнение 1. Настройка базового веб-сервера

В этом упражнении вы узнаете, как настроить базовый веб-сервер Apache.

1. Выполните yum groups install “Basic Web Server”. Это установит пакет httpd, а также некоторые из наиболее часто используемых дополнительных пакетов.

2. Откройте главный файл конфигурации Apache в редакторе и найдите строку, которая начинается с DocumentRoot. DocumentRoot определяет местоположение, где сервер Apache будет искать контент, который он будет обслуживать. Убедитесь, что он установлен в /var/www/html.

3. В каталоге /var/www/html создайте файл с именем index.html. В этом файле введите «Добро пожаловать на мой веб-сервер».

4. Чтобы запустить и включить веб-сервер, выполните systemctl start httpd; systemctl enable httpd. Команда запускает веб-сервер и гарантирует, что он будет запускаться автоматически после перезапуска сервера. Выполните systemctl status httpd, чтобы убедиться, что веб-сервер запущен и работает. В листинге 2 вы можете увидеть, как должен выглядеть результат этой команды.

5. Выполните yum install elinks, чтобы установить текстовый браузер elinks. Введите elinks http://localhost, чтобы подключиться к веб-серверу и убедиться, что он работает.

[root@kvm ~]# systemctl status httpd
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2019-10-27 21:48:23 +10; 13min ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 29160 (httpd)
   Status: "Total requests: 3; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─29160 /usr/sbin/httpd -DFOREGROUND
           ├─29167 /usr/sbin/httpd -DFOREGROUND
           ├─29168 /usr/sbin/httpd -DFOREGROUND
           ├─29169 /usr/sbin/httpd -DFOREGROUND
           ├─29170 /usr/sbin/httpd -DFOREGROUND
           ├─29171 /usr/sbin/httpd -DFOREGROUND
           ├─29172 /usr/sbin/httpd -DFOREGROUND
           ├─29831 /usr/sbin/httpd -DFOREGROUND
           ├─29833 /usr/sbin/httpd -DFOREGROUND
           └─29834 /usr/sbin/httpd -DFOREGROUND

Oct 27 21:48:23 kvm systemd[1]: Starting The Apache HTTP Server...
Oct 27 21:48:23 kvm httpd[29160]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, usi...message
Oct 27 21:48:23 kvm systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.
[root@kvm ~]#

Понимание файлов конфигурации Apache

При установке веб-сервера Apache по умолчанию создается довольно сложное дерево конфигурации в каталоге /etc/httpd. В листинге 3 показано содержимое этого каталога по умолчанию. Обратите внимание, что содержимое этого каталога может отличаться на вашем сервере, если установлены дополнительный пакеты. Apache является модульным, и после установки дополнительных модулей Apache здесь могут быть установлены другие файлы конфигурации.

Листинг 3

[root@kvm ~]# ls -l /etc/httpd/
total 0
drwxr-xr-x. 2 root root  37 Oct 27 21:47 conf
drwxr-xr-x. 2 root root 135 Oct 27 21:48 conf.d
drwxr-xr-x. 2 root root 186 Oct 27 21:48 conf.modules.d
lrwxrwxrwx. 1 root root  19 Oct 27 21:47 logs -> ../../var/log/httpd
lrwxrwxrwx. 1 root root  29 Oct 27 21:47 modules -> ../../usr/lib64/httpd/modules
lrwxrwxrwx. 1 root root  10 Oct 27 21:47 run -> /run/httpd
[root@kvm ~]#

Первое, что вы заметите, это наличие трех символических ссылок на журналы, модули и каталог выполнения. Они созданы, чтобы позволить Apache запускаться в среде chroot.

Среда chroot предоставляет поддельный корневой каталог. Это каталог в файловой системе, представленный в качестве корневого каталога для процесса, который выполняется в среде chroot. Это сделано по соображениям безопасности: процессы, работающие в среде chroot, могут обращаться к файлам только в этой среде chroot, что снижает риск возникновения инцидентов безопасности, когда злоумышленникам удается получить оболочку входа в систему с использованием идентификатора веб-сервера и попробовать пройти через файловюя систему для выполнения несанкционированных действий.

Основные файлы конфигурации для веб-сервера Apache находятся в каталоге /etc/httpd/conf. Для начала, есть файл httpd.conf, который содержит наиболее важные параметры конфигурации. Кроме того, есть файл с именем magic. Этот файл используется браузером для интерпретации того, каким должно быть содержимое веб-сервера. Это гарантирует, что содержимое веб-сервера отображается правильно в разных браузерах.

Каталог /etc/httpd/conf.d содержит файлы, которые включены в конфигурацию Apache. Это делается с помощью строки  Include conf.modules.d/*.conf в файле httpd.conf.

Этот каталог может использоваться RPM, которые включают snap-in файлы оснастки Apache. Как и в случае с ServerRoot, этот подход позволяет добавлять файлы конфигурации, которые определяют различные веб-страницы, без изменения содержимого файла /etc/httpd/conf/httpd.conf.

Последним каталогом конфигурации является /etc/httpd/conf.modules.d. Apache – это модульный веб-сервер. Поэтому функциональность веб-сервера Apache можно легко расширить, добавив дополнительные модули, которые обеспечивают множество различных функций.

Если используются модули, они могут использовать свои собственные файлы конфигурации, специфичные для модулей, которые будут помещены в каталог /etc/httpd/conf.modules.d. Опять же, цель этого подхода состоит в том, чтобы сохранить конфигурацию в /etc/httpd/conf.d/httpd.conf настолько чистой, насколько это возможно, и убедиться, что конкретная конфигурация модуля не перезаписывается при обновлении универсальной конфигурации Apache.

Создание виртуальных хостов Apache

Многие компании размещают более одного сайта. К счастью, нет необходимости устанавливать новый сервер Apache для каждого веб-сайта, который вы хотите запустить. Apache можно настроить для работы с виртуальными хостами. Виртуальный хост – это отдельный файл конфигурации Apache, созданный для уникального имени хоста.

При работе с виртуальными хостами процедура доступа к хосту примерно такая:

  1. Клиент начинает сеанс с конкретным виртуальным хостом, обычно запуская браузер и вводя URL-адрес веб-сайта, который клиент хочет использовать.
  2. DNS помогает определить IP-адрес виртуального хоста, который является IP-адресом сервера Apache, на котором могут размещаться разные виртуальные хосты.
  3. Процесс Apache получает запросы на все виртуальные хосты, которые он размещает.
  4. Процесс Apache считывает заголовок HTTP, чтобы проанализировать, на какой виртуальный хост необходимо отправить этот запрос.
  5. Apache читает конкретный файл конфигурации виртуального хоста, чтобы определить, какой корневой каталог документов используется этим конкретным виртуальным хостом.
  6. Запрос перенаправляется в соответствующий файл содержимого в корне этого конкретного документа.

При работе с виртуальными хостами необходимо помнить несколько вещей:
■ Если ваш сервер Apache настроен для виртуальных хостов, все серверы, на которых он размещается, должны обрабатываться виртуальными хостами. Чтобы создать все записи перехвата для всех HTTP-запросов, которые направлены на этот хост, но у которых нет определенного файла виртуального хоста, вы можете создать виртуальный хост _default_: 80.

■ Виртуальный хостинг на основе имен является наиболее распространенным решением. В этом решении виртуальные хосты используют разные имена, но один и тот же IP-адрес.

■ Виртуальные хосты на основе IP менее распространены, но необходимы, если имя веб-сервера должно быть преобразовано в уникальный IP-адрес. Виртуальные хосты на основе IP требуют нескольких IP-адресов на одном сервере и являются общими в конфигурации, где сервер Apache использует TLS для защиты соединений.

Упражнение 2. Установка виртуальных хостов Apache

В этом упражнении вы создадите два виртуальных хоста. Чтобы помочь вам настроить виртуальные хосты, вы сначала настраиваете разрешение имен, после чего вы создаете конфигурацию виртуальных хостов.

Предполагается, что у вас есть два сервера с именем server1 и server2. Если что, вы можете настроить гипервизор и создать две виртуальные машины по этой статье: KVM в CentOS 7.

1. На сервере server1 и server2 откройте файл /etc/hosts с помощью редактора и добавьте две строки, которые позволяют сопоставить имена виртуальных хостов, которые вы собираетесь создать, с IP-адресом сервера:

192.168.122.210 server1.example.com server1
192.168.122.220 server2.example.com server2
192.168.122.210 account.example.com account
192.168.122.210 sales.example.com   sales

2. На сервере server1 добавьте следующее в файл /etc/httpd/conf/httpd.conf. (Вы можете оставить все остальные настройки как есть.)

<Directory "/www/docs">
        Require all granted
        AllowOverride None
</Directory>

3. Там же на сервере server1 создайте файл конфигурации с именем account.example.com.conf в каталоге /etc/httpd/conf.d.

Добавьте в этот файл:

<VirtualHost *:80>
        ServerAdmin webmaster@account.example.com
        DocumentRoot /www/docs/account.example.com
        ServerName account.example.com
        ErrorLog logs/account/example.com-error_log
        CustomLog logs/account.example.com-access_log common
</VirtualHost>

4. Закройте файл конфигурации и выполните:

mkdir -p /www/docs/account.example.com; mkdir -p /etc/httpd/logs/account/example.com-error_log; chown apache.apache -R /etc/httpd/logs/account/example.com-error_log

 

5. В каталоге account.example.com, который вы указали выше в строке DocumentRoot, создайте файл с именем index.html и убедитесь, что в нём написано «Добро пожаловать в account».

6. Временно выключите SELinux командой setenforce 0.

7. Выполните systemctl restart httpd для перезапуска веб-сервера Apache.

8. Выполните elinks http://account.example.com. Теперь вы должны увидеть страницу приветствия account. (Возможно, вам придется установить elinks, используя yum install -y elinks.)

9. Вернувшись в терминал, скопируйте файл /etc/httpd/conf.d/account.example.com.conf в файл с именем /etc/httpd/conf.d/sales.example.com.conf.

10. Откройте файл sales.example.com.conf в vi и выполните команду :%s/account/sales/g. Этой командой вы сделаете замену текста account на sales, который встречается во всём файле.

11. Создайте каталог /www/docs/sales.example.com и создайте в нем файл index.html, содержащий текст «Добро пожаловать на сервер sales».

12. Перезапустите httpd и убедитесь, что account и sales доступны.

Configure NGINX and NGINX Plus to serve static content, with type-specific root directories, checks for file existence, and performance optimizations.

This section describes how to configure NGINX and NGINX Plus to serve static content, how to define which paths are searched to find requested files, how to set up index files, and how to tune NGINX and NGINX Plus, as well as the kernel, for optimal performance.

Root Directory and Index Files

The root directive specifies the root directory that will be used to search for a file. To obtain the path of a requested file, NGINX appends the request URI to the path specified by the root directive. The directive can be placed on any level within the http {}, server {}, or location {} contexts. In the example below, the root directive is defined for a virtual server. It applies to all location {} blocks where the root directive is not included to explicitly redefine the root:

server {
    root /www/data;

    location / {
    }

    location /images/ {
    }

    location ~ .(mp3|mp4) {
        root /www/media;
    }
}

Here, NGINX searches for a URI that starts with /images/ in the /www/data/images/ directory in the file system. But if the URI ends with the .mp3 or .mp4 extension, NGINX instead searches for the file in the /www/media/ directory because it is defined in the matching location block.

If a request ends with a slash, NGINX treats it as a request for a directory and tries to find an index file in the directory. The index directive defines the index file’s name (the default value is index.html). To continue with the example, if the request URI is /images/some/path/, NGINX delivers the file /www/data/images/some/path/index.html if it exists. If it does not, NGINX returns HTTP code 404 (Not Found) by default. To configure NGINX to return an automatically generated directory listing instead, include the on parameter to the autoindex directive:

location /images/ {
    autoindex on;
}

You can list more than one filename in the index directive. NGINX searches for files in the specified order and returns the first one it finds.

location / {
    index index.$geo.html index.htm index.html;
}

The $geo variable used here is a custom variable set through the geo directive. The value of the variable depends on the client’s IP address.

To return the index file, NGINX checks for its existence and then makes an internal redirect to the URI obtained by appending the name of the index file to the base URI. The internal redirect results in a new search of a location and can end up in another location as in the following example:

location / {
    root /data;
    index index.html index.php;
}

location ~ .php {
    fastcgi_pass localhost:8000;
    #...
}

Here, if the URI in a request is /path/, and /data/path/index.html does not exist but /data/path/index.php does, the internal redirect to /path/index.php is mapped to the second location. As a result, the request is proxied.

Trying Several Options

The try_files directive can be used to check whether the specified file or directory exists; NGINX makes an internal redirect if it does, or returns a specified status code if it doesn’t. For example, to check the existence of a file corresponding to the request URI, use the try_files directive and the $uri variable as follows:

server {
    root /www/data;

    location /images/ {
        try_files $uri /images/default.gif;
    }
}

The file is specified in the form of the URI, which is processed using the root or alias directives set in the context of the current location or virtual server. In this case, if the file corresponding to the original URI doesn’t exist, NGINX makes an internal redirect to the URI specified by the last parameter, returning /www/data/images/default.gif.

The last parameter can also be a status code (directly preceded by the equals sign) or the name of a location. In the following example, a 404 error is returned if none of the parameters to the try_files directive resolve to an existing file or directory.

location / {
    try_files $uri $uri/ $uri.html =404;
}

In the next example, if neither the original URI nor the URI with the appended trailing slash resolve into an existing file or directory, the request is redirected to the named location which passes it to a proxied server.

location / {
    try_files $uri $uri/ @backend;
}

location @backend {
    proxy_pass http://backend.example.com;
}

For more information, watch the Content Caching webinar on‑demand to learn how to dramatically improve the performance of a website, and get a deep‑dive into NGINX’s caching capabilities.

Optimizing Performance for Serving Content

Loading speed is a crucial factor of serving any content. Making minor optimizations to your NGINX configuration may boost the productivity and help reach optimal performance.

Enabling sendfile

By default, NGINX handles file transmission itself and copies the file into the buffer before sending it. Enabling the sendfile directive eliminates the step of copying the data into the buffer and enables direct copying data from one file descriptor to another. Alternatively, to prevent one fast connection from entirely occupying the worker process, you can use the sendfile_max_chunk directive to limit the amount of data transferred in a single sendfile() call (in this example, to 1 MB):

location /mp3 {
    sendfile           on;
    sendfile_max_chunk 1m;
    #...
}

Enabling tcp_nopush

Use the tcp_nopush directive together with the sendfile on;directive. This enables NGINX to send HTTP response headers in one packet right after the chunk of data has been obtained by sendfile().

location /mp3 {
    sendfile   on;
    tcp_nopush on;
    #...
}

Enabling tcp_nodelay

The tcp_nodelay directive allows override of Nagle’s algorithm, originally designed to solve problems with small packets in slow networks. The algorithm consolidates a number of small packets into a larger one and sends the packet with a 200 ms delay. Nowadays, when serving large static files, the data can be sent immediately regardless of the packet size. The delay also affects online applications (ssh, online games, online trading, and so on). By default, the tcp_nodelay directive is set to on which means that the Nagle’s algorithm is disabled. Use this directive only for keepalive connections:

location /mp3  {
    tcp_nodelay       on;
    keepalive_timeout 65;
    #...
}

Optimizing the Backlog Queue

One of the important factors is how fast NGINX can handle incoming connections. The general rule is when a connection is established, it is put into the “listen” queue of a listen socket. Under normal load, either the queue is small or there is no queue at all. But under high load, the queue can grow dramatically, resulting in uneven performance, dropped connections, and increased latency.

Displaying the Listen Queue

To display the current listen queue, run this command:

The output might be like the following, which shows that in the listen queue on port 80 there are 10 unaccepted connections against the configured maximum of 128 queued connections. This situation is normal.

Current listen queue sizes (qlen/incqlen/maxqlen)
Listen         Local Address         
0/0/128        *.12345            
10/0/128        *.80       
0/0/128        *.8080

In contrast, in the following command the number of unaccepted connections (192) exceeds the limit of 128. This is quite common when a web site experiences heavy traffic. To achieve optimal performance, you need to increase the maximum number of connections that can be queued for acceptance by NGINX in both your operating system and the NGINX configuration.

Current listen queue sizes (qlen/incqlen/maxqlen)
Listen         Local Address         
0/0/128        *.12345            
192/0/128        *.80       
0/0/128        *.8080

Tuning the Operating System

Increase the value of the net.core.somaxconn kernel parameter from its default value (128) to a value high enough for a large burst of traffic. In this example, it’s increased to 4096.

  • For FreeBSD, run the command:

    sudo sysctl kern.ipc.somaxconn=4096
    
  • For Linux:

    1. Run the command:

      sudo sysctl -w net.core.somaxconn=4096
      
    2. Use a text editor to add the following line to /etc/sysctl.conf:

      net.core.somaxconn = 4096
      

Tuning NGINX

If you set the somaxconn kernel parameter to a value greater than 512, change the backlog parameter to the NGINX listen directive to match:

server {
    listen 80 backlog=4096;
    # ...
}

Nginx был впервые выпущен в октябре 2004 года. Nginx — это свободно доступный веб-сервер с открытым исходным кодом, который можно использовать для обратного прокси, кэширования, потоковой передачи видео, прокси электронной почты и балансировки нагрузки. Разработчики стремились создать веб-сервер, обеспечивающий максимальную производительность и стабильность. Первоначально он задумывался как программное обеспечение для решения проблемы C10k.

Для самых загруженных веб-сайтов в Интернете Nginx оптимизирует доставку контента и приложений, повышает безопасность и обеспечивает доступность и масштабируемость. Это также идеальный веб-сервер для обслуживания файлов вашего статического веб-сайта или файлов, созданных генераторами статических сайтов. В этом посте мы настроим сервер и покажем вам, как обслуживать файл index.html с помощью Nginx. Давайте начнем!

Если у вас нет Nginx, сначала установите его в своей системе, выполнив следующую процедуру:

На первом шаге откройте свой терминал CentOS, нажав «CTRL + ALT + T», а затем запишите приведенную ниже команду:

$ sudo yum install nginx

Безошибочный вывод заявляет, что Nginx успешно установлен в вашей системе.

Как включить Nginx в CentOS

Теперь используйте приведенную ниже команду для включения Nginx в системе CentOS:

$ sudo systemctl enable nginx

После этого запускаем сервис Nginx:

$ sudo systemctl start nginx

Как установить правила брандмауэра для Nginx в CentOS

Следующее, что мы собираемся сделать, это настроить параметры брандмауэра, чтобы разрешить внешние подключения для Nginx, который по умолчанию работает на порту 80. Брандмауэр-CMD является командой, которая используется для управления постоянной и выполнения конфигурацией firewalld.

Для постоянного включения HTTP-соединений на порт 80 запишите приведенную ниже команду в свой терминал CentOS:

$ sudo firewall-cmd --permanent -add-service=http

Чтобы проверить, правильно ли была добавлена ​​служба брандмауэра HTTP в систему, выполните эту команду:

$ sudo firewall-cmd --permanent --list-all

Теперь перезагрузите службу брандмауэра:

$ sudo firewall-cmd --reload

Все сделано!

Как обслуживать файл index.html с помощью Nginx

Чтобы следовать процедуре обслуживания файлов HTML, мы создадим каталог «www» с помощью команды mkdir. Команда «mkdir» используется в системах на базе Linux, таких как CentOS, для создания одного или нескольких каталогов.

Выполните приведенную ниже команду в своем терминале для создания «www» в текущем рабочем каталоге:

$ sudo mkdir www

Затем мы создаем образец файла index.html в нашем каталоге www:

$ sudo nano ~/www/index.html

Добавьте что-нибудь в index.html в соответствии с вашими требованиями. Однако мы добавим в наш файл index.html следующий тестовый контент:

<!doctype html>

<html>

<head>

<title>Обслуживание index.html с Nginx</title>

</head>

<body>

<h1>Как обслуживать index.html с Nginx </h1>

<p>Nginx - это свободно доступный веб-сервер с открытым исходным кодом, который может быть обратным прокси-сервером, балансирующим нагрузку.</p>

</body>

</html>

Теперь нажмите « CTRL + O », чтобы сохранить содержимое, которое мы добавили в файл « index.html », находящийся в каталоге « www ».

После этого мы изменим права доступа к каталогу «www» с помощью команды chmod. «Chmod», что означает «режим изменения», — это команда, которую пользователи Linux используют для изменения прав доступа к файлам.

Здесь, в приведенной ниже команде, мы попытаемся назначить, прочитать, записать и выполнить разрешения всем, кто собирается использовать каталог «www»:

$ sudo chmod 0755 ~/www

Теперь откройте файл конфигурации Nginx «/etc/nginx/nginx.conf» в редакторе nano:

$ sudo nano /etc/nginx/nginx.conf

Файл «/etc/nginx/nginx.conf» содержит различные блоки, такие как http, сервер и расположение для конфигурации Nginx. Найдите в файле следующую строку:

include /etc/nginx/sites-enabled/*;

Вышеупомянутая строка заявляет, что файл конфигурации, присутствующий в «site-available», рассматривается как часть конфигурации Nginx.

Теперь добавьте следующий блок сервера в файл конфигурации Nginx:

server {

listen 80;

server_name test.andreyex.ru;

root /home/andreyex/www;

index index.html;

}

Этот серверный блок указывает, что для всех подключений Nginx будет прослушивать порт «80», имя нашего сервера — «test.andreyex.ru», индексный файл для обслуживания с Nginx — это файл «index.html», а все файлы, связанные с сервер находятся в каталоге «/home/andreyex/www».

Нажмите «CTRL + O», чтобы сохранить изменения, которые мы внесли в открытый файл.

Выполните команду «nginx» с параметром «-t», чтобы проверить файл конфигурации и его синтаксис:

$ sudo nginx -t

Теперь перезапустите службу Nginx в вашей системе:

$ sudo systemctl restart nginx

После перезапуска службы Nginx зайдите в свой домен, который вы добавили в поле «server_name». В результате ваша веб-страница index.html будет обслужена.

Заключение

Nginx был разработан для обеспечения отличной производительности в качестве веб-сервера, особенно когда требуется обрабатывать много одновременных подключений или статического контента. Вот почему он оптимизирован для обслуживания статических файлов. В этом посте вы видели метод установки Nginx и то, как мы обслуживаем index.html с Nginx в своей системе.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

������ Apache
����� ��� ����� ������������, ��� ��������� � ��������
/usr/local/etc/httpd/conf.
��� ����� ��������� ��������� ��� ������� ���������������� �������. �����
���� ��� �� �������������� ��� ����� � ������������ � ������ ������������,
������ ��������� ������. ������� ������ ��������� �� ���������.

������ ����� ����� ������� � �������, ����������
����� ������������,
/usr/local/etc/httpd/conf.
����� �� ������� ��� ����� ������������.

��������� ��� ����� ������ ������� ���
��� ��������, �� ����� ����� �� �������������; ������� �������� �����,
� ��� ����� ����������� � ��������� �������:

$for I in *-dist

>do

>mycopy = �basename $i � dist�

>cp $i $mycopy

>done

������ � ��� ������ ���� ��� �����, �������
����������
.conf. � ����. 3-1
��������� ����� ���� ������ � ��������� ���������� ������� �� ���. � ���
����� ��-�������� ������ ���������� �������� ����� �
dist;
�� �������� �� �� ��� ������, ���� �� ��������� ������ � �������� ���������
� ��� �������� ��������� � ��� �� ��������.

������� 3-1. ����� ������������
Apache HTTPd

 

��� ����� ����������
Httpd.conf ���� ������������
�������, �������� �������� ����������� �������� ������ ������.
Srm.conf ����� ��������
�������, ��������� ������ HTTPd ������� �������������� ������
.
Access, conf ���� ������������
������� �������� ���������� � ���, ��� ����� ����� ������������ ������
� ������ �������.

���������� �������� ��������� � ������
������������, ������� ���������� �������, ������ ��� ��������� ������.
�� ����� ���������� �������� �������� �� ������������ ��������
Apache
�����, ������ ������ �� ���, ������� �����������
� ������ ������������. ������
Apache
����� �������� ����� ����� ������������ �����, ������������� ������� ��
���������� �� �����. ������ ���������� � ������������ ��������� �������
����� ��������, �������� ����������� ������������ �� �������
Apache:
http://www.apache.org/docs/.
������ ���������
� �������
/usr/local/etc/httpd/conf
(��� � ��� �������, � ������� �� ���������� ������
Apache)
� �������� �����������.

httpd.conf: ���� ������������ �������

���� httpd.conf
�������� ������������ �������. �������� ��� � ��������� � �������� ���������
���� ������, ���� ��� ����������. ����������� ���� �������� �������� ���
� �������� ��������. ��� �� �������� �������������� ������������, ������
����������� �� ���������, ������� ���, ��������, �������� ������, �����
��������� ������ ��������. ������������ �������, ������� �� �������,
��������, �������� ������, ������������ �
�ServerAdmin�.
��������� ���������� �� ��������� ��������� �������� ��������, �������
��������� �� ���, ����� ��������� � ������������ ��������, �� ������� �
��� ��������� ���� �� �����������.

ServerType

��� ���� ��������� ��������� �� ���������
��������
ServerType standalone.
�������, ���������� � ���������� ������
(standalone),
����������� �� ����������� ��������� ��� ������� �������. ����� ���������
������������� ��� ��������� ������������������.

������� Apache
(��� � ����������� ������������ ��������
UNIX)
��� ������� ���������� ��������� ��������� ��������� �����. �������
UNIX
�������������� ���������� ��� ������ ���������, � ��������� ������� ��
�������� ��������� ����������� ����� ��������. ����� ������� ������, ����������
� ���������� ������, �������� ������������� �� ������� ������� ��������
�� ����������. ��������� ����� ������, ������ �������������є ��� ��� ������������.
����� ����� ����������� ������, ��� �����������. ��� �������� ������ �����
�������� ��� ������ ��������
StartServers
MaxServers, ��� �����������
����.

� �������� ������������ ������ standalone
����� ��������������� �������� ������
inetd.
� ��������
UNIX inetd ������������
����� �����������. ����������� ������� ����� ������������ ������������
����� �� ��������� � ��������� ���������� � �������, ������������� ��������
HTTP-���������. ���� ����� ���������� ������, ���
Telnet,
������ ������������ �� ����� ������ ���������� ������ ��������� �����.
���� ��� ������ �� ��������� ������� ����� ��������� ��������� ����������
������, ��� ����� ����������� ������������� �������� ����� ������ ���������
��������, ��� ������������ ����� � ����������� ������.
��������
���� �������� ���
UNIX �������� �������������
������ inetd. ����
/etc/inetd.conf
�������� ������ ������� �����, �� ������� �������� inetd. ���� ����� ����������
��� ����������� ������ �������� �����, ���������� � ������ �� ����������
�����, ����
/etc/services
���������� ������������� ���� ������ �� ������� ��������� �������� �� ����������.
��� ��������� ������� ����� ��������� ��� ��� ��������� ���������������
������.

���� ����� �������� ������� ��� ������������
����� ������������ �����, ��������
HTTP
�� ������� ���� ������. ��������� ��� ������ HTML-��������, ��� �������
����������� ����������� � ������ ������� �������, �������������� �������������,
��������� ��������� ���������� �, �������������, ��������� ����� �������,
�� ������ ������, ���� �� ������ �������, ����� �������������� ���������
����� ����������.

����� ����, ������ Apache
������ ��������� ���������� �� ����� ������������ � ����������� �� ��������������
������ ��� ������ ������� ����� ����� ������� inetd. ����� ��������� �������
�����������, ���� ���������, ��� ��� Web-���� ����� ���������� �������.
����������� ���
������� HTTP-�������
������� ������������ � ���� ��������� �����
standalone.

Port

� ���� ��������� �������� ����� ��������
�����, �� ������� ����� �������� ��� ������, ���� �� ������� � ����������
������ (���� ������������
inetd, ��
����� ����� ������� ������ � �����
/etc/services).

��������� �� ��������� ��� ���� ���������
��������
Port 80. � ����� �����
Web-�������� �������� ������������ �� ���������, � �� �������� �����������
������ ��� ���������
HTTP � �������������
��� ������������� �� �������� ������� ������ Web-����. ���� �� ������ ���������
������ �� ���� ����� ��� �� ����� ������, ����� �������� ������ 1024, ��
��� ����������� ���������� �����������������
(root).

���� �� �� ��������� � ���� ������� ������������
�����������������, �� ���-���� �������� ����������� ��������� Web-������
�� ����� � �������, ������������� 1024. ��� ������ �������� �������� ��
���� � �������� ����� ����� � �����
URL;
������ ���������� ������ 8000 ��� 8080. � ���������� ��������������, ���
�� ��������� ������� ����������������� � ����� �������, � ������ �������
�� �����, �������� �� ���������.

HostnameLookups

� ����� ���������� �� ������������� �������������
������
Apache ����� ����� ����������
������, ������� �� ������� �������. � ����� �� ��� ������� ���� �����������,
������������� ������ � �������. ���������
HostnameLookups
���������, ������������ �� � ���������� ���� ��� ���������� (��������,

macl.shoop.com)
��� ������ ��� IP-�����
(��������, 152.2.22.81). �� ��������� ������ ��������� ��� ����������,
�� ���� ��������� ����� ������� ����� �����, ���������� �����
HostnameLookups
�������� ������� ��������� �������� �� ������. ��� �������� ������� ����������
������ ��
�HostnameLookups off�.

User Group

��� ��������� ������ �������������� ��������������
������������ � ������, ������� ������������� �������, ����������� � ����������
������. (���� ������������ inetd, ����������� ������
UNIX
������� ������� ������������� ������������ � �����
/etc/inetd-conf).
����� �������� ��� �����, ��� � �� �������� �����������, ������� �����
����� � ������
/etc/passwd
/etc/group
��������������.

�� ��������� � �������� ����� ������������
�����������
nobody, ��� �������� ������������
������� � ����� ������ ������ ����������. ����� ��� �����������, ��� Web-������
������� ������ ������ � ��� ������, � ������� �������� ������ �� ������
��� ���� �������������. ������������� �������� �������� � ������� ������������
������������ � ������������� ��� ������ Web-������� ��� ��������������.
����� �� ������������� ��
�������������,
������� ���������, ��� ��� ���� �� ���������� ������� � ������� ����� ���������
��������� ������. �� � ���� ������ ������ ��������� ������ � ������������
�����������������
(root).

� �������� �������������� ������ �������
������������ ������������� �����-������ ����������� ������, ��������� �
�������. ����� ������������ ������
news.
���� ����� ���������� ������� ��� ������� ����� ������.

�������� ��������, ��� ��� �����������
���������� ������ ��� ��������� ������ ������������ ���������. ���� ���������
������������ � ������ �� ���������� � �������, ������ �� ����� ��������.
��� ���������
Group, ��������, �� ���������
������� ��������
�1, ��� ��
������ �������� �� �������� ����������� ��������������� ������.

ServerAdmin

��� ����������� ����������� ����� ����������
������ Web-����. ������ ������������ ����� � �����
WebMaster@���_cep�ep,
��� ���_������ �������� ������ ��������� ������ ������ �������.
��� ���� ����� ��������� ����������, ���� ���� �������� ���������.

���� ����� ���������� �������� � ��������������
�������� �������� ���� ������ �����������, ����������� � �����

/etc/aliases.
���������������� ������������
�����������������, �������� � ���� ���� ��������� ������:

webmaster: name

������ ����� ��� ������� ���������������
��� ������������, ������� ����� ���������� ������������� ������ Web-�������.
����� ��������� ��������� �������:

# newaliases

� ���������� ���� ������ ����������� �����
�����������.

ServerRoot

� ���� ��������� �������� ������� �������,
� ������� ����� ����������� ����������� ����������� HTTP-�������

Apache. �� ��������� ��� �������
/usr/local/etc/httpd.
���� �� �� ��� ���
��������� ����� �����������, ��� �� �������� ������ ��� ������.

BindAddress

��� ��������� ������������ ������ ��� �����������,
������� ����� ������ IP-������. � �� ������� ����� �������������, �������������
������ �� IP-������� ���������� ������ ����� ����������� �� ������� �����������
��������. ����������� ����������� ����� ���� IP-�����.

������� ��������� ����������� � �������
������ ������� � ����������� ��������� ����������� ����, � ������� ������������
�����������є �� ���. 108. �� ��������� ��� ��������� ����������������,
� ������ ���������� ������������� ���� ������� ����������.

ErrorLog TransferLog

��� ������ ���� ���� �������� ��������
�������������� ���������� ������, � ������� �������������� ������ � �������
������� � ������� ��������������. ������ �������������, ��� �����, ������������
�� � ����� ����� (/), ������������� �� ��������
ServerRoot.

��� ���������� ����� ������ ������. � �����,
��������� � ���������
ErrorLog, ������
��������� ��������� �����������, ������� ��������� �� �������, ����������
����������
CGI. � �����, ���������
� ���������
TransferLog, ������ ���������
��� ������� ��������. ���� �������� ��������� ���� �����
HostnameLookups,
�� ������ � ��������� �������������� ����� �����������. ���� ����� ���������,
�� �������������� ������ IP-������ ����������� ��������.

���� �� � ��� ��������� ������������� (���
�������) �������� �������� � ���� ����������.

PidFile ScoreBoardFile

���� ������ �������� � ���������� ������,
�� � ��������� PidFile �������� ��� �����, � ������� �������� �������-������
��������������, �������� ���� ����������������� �����. ��� ���������� �����
������������ ��� ���������� ��� ����������� �������.

��������� ScoreBoardFile ��������� �������
Apache ������� �� ����������� �������������������.
�� ������������� ��������� ScoreBoardFile �� ��������� ��������� ��� ������������
������
Status. ���� �� � ��� ���������
������������� (��� �������) �������� �������� � � ���� ����������.

ServerName

� ���� ������ ������ ������ �����������
��� ������ ������� � ��� ����, � ������� ��� ���������� � ������

URL (�� ���� http://www.�M�_�a�e��_�������/).
��� ������ ���� ��� ����������, ������������������ � ������� ���� ��������
����� ����������� ��� ����������.

CacheNegotiatedDocs

��� ��������� ������������� ��� �������������,
���������� ����� ������-������ � ������, ���������� ��� ��� ����������,
�������� �� � ���� � ���������� �� ����������� ����� ������ ����, �����
����������� � ��������� ����� �����. ��� ��������� ��������� ������-�������
���������� ���������� ���������, �� ���� ���������, �� ����������
�����������, ����� ��� ����� ���������
CGI
��� ��������������� �������� ��������� ��������. ������ ������-�������
�� �������� ����� ���������, ��������� ������ ����������� �� ���������.
�� ��������� ��� ��������� ��������� (���������������� ��� ������ �������
�#�), �, ��������� �����, ��� �� ����������� �� �������.

Timeout

��� ���������� ������� � ��������, � �������
�������� ������ ���� ����������� ��������������� ������� ��� ����������
������� ������������� ���������������� �������� ������. ���� � ��� ���������
���������� � ���������� ��� ��� ���������� ���������� ������� �����, ���������
��� ��������. � ��������� ������, 20 ����� �������� ������ �����������
�������� �������� ������� ���������� ������� ��� ���������� ����������.

KeepAlive KeepAliveTimeout

�������������� KeepAlive
�������� ���������� ���������
HTTP I.I
(������� �� ��� ��� ����� ������ �����������), ������������ �������� ���������
��������.
HTTP 1.0 ��� ������ �������
�� �������� ������� ��������� ����� ���������� ����� �������� � ��������.
� �������
Apache ����������� ������������
���������
HTTP 1.1 �����������
KeepAlive, ��� �������� ����������� �����������
��������� �������� � ������ ������ ����������. ��������, ������ ��������
Web-�������� � �������� ����������� ������������� ����������� �� ���� ���������
����������, � � ��������������
KeepAlive
��� ���������������� ������� ������������ � ������ ������ ����������. ��������,
��� ��� ��������� ����� ��������� �������� ��������. �������, ������ ������
����� ����������� ����� ����������� �������.

��������� �� ��������� ��� KeepAlive
�������� 5 � ������������ ����� �������� � ������ ������ ����������. �����
�������� ����� ��������� ����� 5, ����������� ��������� ���������� ������������������.
����� ��������� ��� �����������, ���������� ��������
KeepAlive
������ ����. ��������
KeepAliveTimeout
�������� ���������� ������� ����� ����������������� ���������. �������
�������, ���� ������ � ������ ������ ���������� ���������� ��� �������,
� ����� � ������� ���������� ������ �������� �� ���� �� ���������, ������
�������, ��� ������ ������ ��� ���������. �� ��������� ����������� ��������
15 ������.

StartServers

�������� ��������, ��� ���������
StartServers � ����� httpd.conf
����� ����� ��������
MinSpareServers
MaxSpareServers, ������ ������ ��������
��������
Min- � MaxSpareServers �����������
�����, ���� ������� ����������� � ����������
StartServers.

����� ���������� ���������� (standalone)
����� ������ �������
(ServerType)
��� ���������
StartServers ��������
��������, ������� 1 (�� ��������� ����������� �������� 5), ���������� ��������
��������� ������ �������. ������ ������� ������ ���������� ������ ��� ������
������� ��������� ����������� �����, ��� ���� ���������� ��� ��������.

�������� ����� ������� ��������� � ��������
������������ ��� ���� �������� � ����, �������� ���������� � ���������
�� ��������� ������. ������������, ����� ��������� �������� ������� ������������
��������, ������ ��������� �������. �� ��������, ������, ��������� ����������
����������, ��� ���� �������� ����� ����������, ���� ������ ������ �� ��������
����� ����������� (����� 100 000 �������� � ����).

���� ��� ������ �������� � ���� ������
�������� �� ���������, � ����� �������������������� � ���� ����������,
����� ����� ����������� ��������� ��� ������ Web-�������.

MaxSpareServers MinSpareServers

���� ����� ����������� � ��� �������� ���������
����� �������� � ����, �������� ����������
StartServers,
����� �������� ������������� ��� ������������ ��������. ��� ��������������
��������-������� �� ����������� ����� ��������� �������, ���� ��������
��� ���� ��������; ��� �������� � ������. ��������� MaxSpareServers ���������
����������� ����� ��������� ��������, ����������� � ����. ���� �� ������,
��� ������� � ��������� MaxSpareServers, �� ������ �������� �����������.
����������, ���� ��������� �������� � ���� ������, ��� ��������� ���������
MinSpareServers, �� � ���������� ������� �������� ��������� ��������������
����� �������. �����-����, ��������� ���� �������� ���� ���������� �� ������
����������� Web-��������.

MaxClients

��������� Web-������� ������������ �������
���������� �������� �� �������������� ��������, ��� ����� �������� � �������
������ ������-

���� ��������, ��� ��������� ����������
����������� � ���������. ���������
MaxClients
������������� ������������ ����� ����� �������, ������� ����� �����������
������������. ����� ����������� ���� ������ (�� ��������� � 150), �����
������� �������� �����. ���� ��� �� ������� ���������� �������������, ��
�������������� ������� ��������� ��������. ��������� ����� ���-���� �����,
��� ���������� ������-���� ������ ������.

MaxRequestsPerChild

� ���� ��������� �������� ����� ����� ������
���������� ������� � ���� ��������. ��������� ������������� ����� ����������
�������� (�� ��������� � 30), ����� ������� �����������, � ������ ��� �����������
�����. � ����������� ������ ��������� ����� ��������� �� ���� ���������
�������.

ProxyRequests � ��������� Cache

��� ��� ���� ��������, ������-������� ���������
� �������� ����������� ����� ��������� � ���������� ���������, ��������������
������������� �������� �����������. � ������� ������������ �����������є
�� ��� �� ����� ���������� ������� ��������� ������-�������. ���� ��������
���������
ProxyRequests � �������������
���������
Cache �������������������.

Listen

������������� ����������� �������� ���������
������� ������
URL ����� ���, �����
�� ��������� �� ��������� ����, ���� ���� � ���������������� �� ��� �����
������ ����� �������� �������. ��������, �� ������� www.webstores.com �����
������� ������ ��� ���������� ����������
ShoopSoft.
����������� ����� URL �������� ��, ���
http:// www.webstores.com/shoopsoft/.
� �������������� ��������� ����������� �������� ������, ������������� ����������,
��� �� �������� ����� URL ����:
http://www.shoop.com/,
��� ����� � ���������� ���� � ��������� ���� ����������� Web-������.

��������� ����������� �������� ��������
����������� � ������� ������������ �����������є. ���� ��� �� ���������
������, ����������� � ����������
VirtualHosts.

�������� ���������

��������� ��� ��� ���� access, conf
� ���������, ��� ���������� ��� ����������� ���������. ����� ���������
���� � ���������� � ���������� ����� ������������:
srm.conf.

srm.conf: ����� �������� �������

����� �������� �������, ��������������
����� ����
/usr/local/etc/httpd/ conf/srm.conf,
���������, ������ � ����� ������� ������
Apache
������ ����� ����� ��� �������� �������������. ��� ��������� �������������
����������� ��� �������
URL, �����������
������� �� ��������, � �������� ����� � �������� �� ����������, �� �������
�������� ������.

�������� ���� ���� � ��������� � ��������
�������� �� ��������� ����������, ����������� ��� ������ Web-�������. ���
� � �����
httpd.conf, ������
��������� � ��������� � ��� �������� ������ ���������� � ��������� ������.
������ ������ � ������, ������������ � ������� ������ (#), ������������
��������
.

��� � ��� ����� httpd.cnf,
����������� �������� �������� �����������, ������� ������ ��� ���� �� �����������
������� ������������ ���������. ��� ������ ����� ������ �������� ���� �
�������� ����. ������ �� ���� ������ ������������ �������� ����� ��������
���������� ������ �����
srm.conf,
��������� �������������� ���������� Web-���� ����� ��������� ������������
� ����������� � ��� �������.

DocumentRoot

� ���� ��������� �������� �������, �� ��������
������� ������������ �������� ���������. �� ��������� ����������� �������

/usr/local/etc/ httpd/htdocs.
����� �������������
�������� � �����, ����������� � ������ ���������, � ��� ����� ������������
���������� ������.

UserDir

� ���� ��������� �������� �������� �����������
� �������� �������� ������������, �� �������� ������� ��������� � ��� ������,
���� �� ������ �������� ����������� ���������������� ���������. �� ���������
����������� �������� ��������
public_html.
���� ��� �� ��������� ������������ ����������� ���������������� ���������,
������� �������

UserDir DISABLED

����� �������� ������� ����������������
��������� � �� ����������� �������� ����� ����������� ���� � ������� �����������
Web-�������������.

Directorylndex

��� ��������� ��������� ������ ��������
���������, ������������� �� �������, ������� �� �������� � ������

URL �������� ���������. ��������, � ������
URL
http://www.shoop.com/ �����������
�������� ���������, ������� ����� ��������� ��������, ��������� � ���������
Directorylndex.
��������� �� ��������� ����������� ��������
index.html,
������ �������� ������� ��������
index.html
�� ��������
DocumentRoot �� �������.

� ��������� Directorylndex
����� ������ ��������� ���� ������. ���� ������ ��������, ��������� � ������,
�� ������ � ��������, �� ������ ���� ��������� �, � ������ ������, ��������
��� �������. ��� �������� ������� ��� ����������������� ����������, ���������
����������, ���������� ���������, ����������� ��
DOS,
�� ������������ ���������� ���� ������ �����, ��� �� ���� ��������. ��������,
����� ��������� � �������� ��������� ������� ��������� �����

index.html
��� index.htm,
��������� � ������
Directorylndex ���������
��������:

Directorylndex index.html index.htm

� ���� �������, ���� � ����� � ��� �� ��������
������������ �����
index.html
index.htm,
� �������� ��������� ��������
����� ������� ����
index.html,
��������� �� ����� � ������ ������.

��� ������� ������� ���� index.html
(��� ���� � ������ ������, � ����������� �� ����, ��� �� �������� ����
��������� ��������) � ��������
DocumentRoot
��� ��� Web-����, ��� � ��� �������� �������� � ����������� (�, ��������,
��� �������� ������� �������������). ��� ��������� ������������ �������
��������� �������������, ������� �� ����� ������� �������� �����������
���������.

��� ����� ������������� ��� ������ �������
������ ����������. �� ���������, ���� ������ ��������� ����� URL ��������,
�� ������
Apache �������� � ����� ������
������, ��������� � ���� ��������. ������ � �������� ��������� ����, ��
������ ������������� ����������� �������� ������ ���� ������ � ���� ��������.
��� �� ����������� ��������� ������� ��������
index.html
��� ������� Web-�������; ���������� ������� ���������� ������ �� ���� ��������
��������. ��������, ���� ��� �������� �������� ������ ����������
MyHome.html,
�� ��� ������ ��������� ������� ��������� ���������� ������ ��� ���������

index.html,
����������� �� MyHome.html:

$ ln -s MyHome.html index.html

�������������, ����������� ������ �������
������������ ������������ � �������� ����� ��������� �������� ����

MyHome.html,
�������� ��������� ���������
���������
Directory Index:

Directoryindex index, html MyHome.html

FancyIndexing

��� ��� ���� ��������, ��� ��������� �������
�� �������� �������� ������
Apache:

� ������� ����, ��������� � ���������
Directorylndex (���� ������� ����������),
� �������� ��� �������;

� ���� ���� Directorylndex
�� ����������, �������� ������� ���������� ��������.

���� ������� ����� Fancylndexing,
�� � ���������� ������������ ������ � �������� ������. ���� ��� ����� ���������,
������ ������������ ���������� � ����� ������� ����.

AddlconByType

��� ������ ����� Fancylndexing
������ ��������� ���� ������� �����, ����� ������ � ������ ������� �������
������������ � ������������ � MIME-������ ������. ������ ���������� ���������
������:

AddlconByType (.ALT, URL) MIME

� ALT � ��� ��������� �������� ������,
������� ������������, ���������� � ���������� ����������, ������ ������
������.

URL � ��� ����� URL,
�� �������� �� ����� ������� �������� ���� ������.

MIME � ��� MIME-��� ���� �����
MIME-�����, ���������� � ������� ��������.

����� URL /icons
�������� � ���������
Alias � ���� ��
�����.

���� ������ ���, ������, ����� ����������,
���� ������ �� �� ����������� �� ������� ����� ����������� �����, ��� �������
��������� ������� ���� ������.

Addlcon, Defaultlcon

�������� � ��������� Addlcon
��������� �������, ����� ������ ������� ������������ ��� �������������
������ � ���������, ����� ���
Defaultlcon
������������ ����� ����� URL ������, ���������������� ��� �������������
� �������, �� �������� ���� ��������� ������.

AddDescription, ReadmeName, HeaderName
Indexignore

��������� ����� �������� ��������� ���������
���������� ���������� ��������. ���
Fancylndexing
� ��� ���������
Icon, ��� ����� ������������,
������ ���� �� ������ ����, ��������� �
Directorylndex.
���������
AddDescription ���������
����������� � ���������� �����, ������� ������������ ���, ������� ���������.
� ����������
ReadmeNameHeaderName
�������� ����� ���������� ����� � HTML-��������� ��������������, �������
�������� � ����������. ��������� ����, ��������� �
ReadmeName,
������ �������������� � ������������ ��������, � � ������ �������������
���������
HeaderName ������ �������
����������
.html � ��������
���������
HeaderName � ����� ������
�������� � ����� ���������. ��������, ���� �������� � ���������

HeaderName �������� �� ��������� ��������
HEADER, �� ������ Apache
����� ������ � �������� ��������
HEADER.html.
��������, ��������� � ���������
ReadmeName, ������������
� ����� �������� ����.

� ��������� Indexignore
����������� ������ ������ � ������������, �� ���������� � ���������� ��������.
������ ����� ��� ������ ��������
UNIX
����������� ����� ��������� ������ � ������ ��������� �����. ��������,
���� �� �������� �� ���������, �*-�, ������������ ��� ������� �����������
��������� �����, ����������� ����������
GNU emacs ���
������ ������ �������������� ������.

AccessFileName

���� ����������������� ������������� ����������
AccessFileName (��. ������ ������� � ������������є), �� ������

Apache ����������� ������� ����������� ����������
���������� ������� � ��������� �������������� ������������� ����������
�� ��������� ���������. ��������� ���� ��������� �������� ����������� ������
������ �������� ���������� � ����� �������� �������
(srm.conf)
���������� ���� ����������� ����� ���������� �������� � ����

.htaccess
� ����� ��������. ���������
AccessFileName ��������� �������� ��� ����� �����. ����� � ���� ����� ��
����� ������������, ��� �� �������� � ��������� AccessFileName ��������
�� ���������.

DefaultType

���� ������ ����������� ���� � �����������,
��� �������� �� ������� �� ������� ���������������� �
IME-����,
�� ������������ MIME-���, ��������� � ���������
DefaultType.
����� ������������ ����������
MIME-�����
����� ���������, ���������������� ��������������� ���� ����������

AddType.

AddEncoding

������ ��� ������, ��������������� ���
�������� ��������, ������������ ��������� ����� ������, ��� �����������,
��� ��������� ����� ��������. ��������� �������� ����� ���������� �������
����������, ����������� ��� ������������ MIME-�����. ��� MIME-���� �����������
� ���������
AddEncoding. �� ���������
����������� �������� ���������������� ����������
.Z
.gz (�����, ������ �����������
compress gzip
��������������), �, ��������� �����, ��� �� ����������� ��������� �����-����
������.

AddLanguage

���� �� ���������� ������������� �������������
��������� �� ������ ������, �� ��� �������������� ������������ ����� �
���������� ����� ����� ��������������� ����������
AddLanguage.
������������� �������� ����� ������ ������ �������� � ��������� ��� ������,
�������� �
�fr� ��� ������������ �����
��� ��1� ��� ���������. ����������, ������� �����������, ����� ������������

�en�. ���� ������������ ����������� ����
home.html, � ��� ������� ���������, ��� ��������
������������ ������������ ����������� ����, �� ������ ���������� ��� ���������,
����� ������, ����� �������������� ���������� ����� ����� ������������
��� ������������� ����������. �� ��������� ������� ���������� .fr, �������
������������ ����� ������� ��������
home.html.fr.
�������, ���� ���������� ��������
home.html,
�� ������������ ������� ������ ��� � ������� �������� ��������� ����������,
������ ���� �� ������ �������� ��������.

LanguagePriority

���� �� Web-������� ������� ��������� ��
��������� ������
(home. html.fr, home.html.de, home.html.se),
� ������ ���������� ��������
home.html,
�� ������� ��������� ������������ ����� ���������, �� ������ ������ ������,
����� �������� �������� �������. � ���������
LanguagePriority
� ��������� ������������������ ������������� ���������� ��������� ������.
�� ��������� ������ ���� ����������, ����� �����������, ����� ��������.
� ����������� ���� ������� ������� ����� ������� ��������
home.html.fr.

Redirect

��������� Redirect
����������� ��������, ����� ��������� ���������� ������������� � ��������
���������� � ������ ������� �� ������� ��� ���� �� ������ ������. ��������,
���� ��������
ShoopSoft ������ �������
���� ���������, ������������ ������������ ��������
Linux,
� ��������� ������, �� ����� ���� ������� ������� ��������� ��� ����������
����� ��������� �� ����� ������, ����������� � ���� �������. ���� ������
�����
URL ��� http://www.shoop.com/Linux,
� �����
URL ������ �������������
http://www.shooplinux.com/,
�� ����� ���������������
��������� ����������
Redirect:

Redirect /Linux http://www.shooplinux.com/

� ����������, ��� ������� �� ���������,
���������� Linux � ������� ������ ����� URL, ����� �������������� �� ������
������ �������������.

Alias

��������� Alias
���� ����������� ������������� ������ � ����������, ����������� �� ������
� ��������, ��������� � ���������
DocumentRoot,
��� ������������, �� � � ������ ���������. �� ��������� � ���������
Alias
����� ������ ���� ��������� �
/icons,
������������ �����������
Addlcon
AddIconByType. ���������, ��� ��� ������
Alias �� ����������������, �� ���� �� ����������
� �������
#. ������������������
��������� ����� �������������� ��������. ��������� ����-������ �������

Apache ������������ � �������������������
�����������
Alias ScriptAlias.

ScriptAlias

� ��������� ScriptAlias
�����������, � ����� ��������� �������� ������ ���������
CGI.
�� ��������� ������������ ��������� ���������
Script-Alias:

ScriptAlias /cgi-bin/ /usr/local/etc/httpd/cgi-bin/

��� � � ������ ��������� Alias,
������� ���������, ��� ������ �������� ������ �� �������� #. �������� ��
��������� �������� ��������� ���������� �������� � �������� ��������� CGI,
�������� ��������
fortune (�������������
�������� ������). � ������ ��������� ����������� ����������� ����, �������
������� ����� ������������ ��� ������� ��������� CGI. �� ������ ���������
����������� �������, � �������� �������������� ������ � ����������������.

��������, ������ ������������� �����
URL /cgi-bin/, � � ����������������
�������� ��������� � ��������
/usr/local/etc/httpd/cgi-bin,
� ���� ������ ��� �������� �� �������� CGI
/usr/local/etc/httpd/cgi-bin/
fortune
������� ��������������� ���������
�������
URL: http:// www.shoop.com/cgi-bin/fortune.

����������� ��������� �������������� �����
��������
ScriptAlias. �������� �� �����
��� ������� ������������ (�� ����� ���, ������� �� ���������), ��������
������� ������ � ��������� ����������� �������� CGI. ��������, �������
��� ������������
jem ������� ��� ����������
��������� CGI /jembin
� ��������
/home/users/jem/html/cgi
����� ��� ������ ��������� ������:

ScriptAlias /jembin /home/users/jem/html/cgi

���� �� ���������� ���� ������������� ���������
� ��������� �� ����� ������� �������� CGI ��� ������-���� �������� ���
������������� � ����� �������, ������ �������� MIME-��� CGI. ��� �����
���������� �������� ���������
AddType.

AddType

��� ��������� ������� ��� ���������� �����
����� ��������������� �������� ���������� �� ������ ������������� MIME-�����.
������� �������� ������’���� ���������, ������� ����� ������������ ��������,
������ ������
Adobe Acrobat, �����
�������� ���������� ����������
.pdf.
��� ����� ������������� ������� �������, ��� �������� �������� ������

Acrobat (���� �� ����������), � ���������
����������� �������, ����� �� �������� ��������� ��������� ������
Acrobat.
��������� AddType ���� ����� �����������. ��������, ����� ������ �������
������� ����������
.pdf, �����
��������������� ��������� ��������
:

AddType application/pdf pdf

������ Apache
����� ���������� ��� ����������� MIME-����, ����������� ������������� �������,
������� ����� ������� � ��������� AddType. � ������������ � �������� �����

srm.conf
��� ��� ���� ����������������:

#AddType text/x-server-parsed-html.shtml

#AddType application/x-httpd-cgi.cgi

������ ��������� AddType
��������� ������������� ����������� ��������� ���������; ���� ������� ��
��� ������ �����������, �� ����� ����� ��� ������ ����������

.shtml
��������� �������, ��� � ���������
������� ��������� ���������.

��������� ��������� ��������� ���������
������ �������� � ���� Web-�������� ������ �������� ��� ����� �����-����
�������. ���� ������ ����������� ����� �������� ��� ����� Web-������������,
��� �������� ������ ������������� �� ������� ��������� ������ HTML-��������
����� ��������� ��� �������. ��� ���� ������������� ����� ��������� ��������.
�������������� ���������� � ��������� ���������� ����� ����� ��

http://hoohoo.ncsa.uiuc.edu/docs/tutorials/includes.html.

������ ������������������ ���, application/x-httpd-cgi,
������ ������ ����������,
.cgi.
���� ������� ������ ����������� �� ���� ������, ��
�����
���������� ����� ��������� �������, ��� ���� �������� ����������� ���������

CGI. ��� �������� ��������� �������� ��� ������
�� �������, � �� ������ � ���������, ��������� � ���������
ScriptAlias.

��������� ������������� ����� ���� �����
�����, ������ �� ����� ������ #.

AddHandler Action

����� �������� ���������� � ��������� MIME-�����
��� ������ ���������
AddType, ������
Apache ������ ����� ������� ������������ ��������������
��� ����������� �������������� ������ ������ ������������ ����� ����� ���������
�� ������������. ���������
AddHandler
������ � ������������ ���������� ����� ������������ ��������. ���������
�� ���� �������� �������� � ������, ��������, ������
�AddHandler
server-parsed shtml� ������ � ������������
���� ������ � �����������
.shtml
���������� ������� ������� ��� ���������
�server-parsed�,
������� ���������� �������������� ������ ������ � ����� ����� ���������
���������
. �������, ��������� � ���������
AddHandler, �� ����������� ������ ��������
���������� �������� �������. ���������
Action
����� ������� � ������������ ������� ��
AddHandler
�������� CGI. ��������, ��������� ������ � �����
srm.conf
������� ��������� �������, ��� ��� ������ �������� ����� � �����������

.foot
������� ��������� �������
foot-action. ����� ������� foot-action
�������� � ������������ ��������
/cgi-bin/footer,
������������� ��� ������ ������ �������
foot-action.

AddHandler foot-action foot Action foot-action /cgi-bin/footer

��������� Action
����� ��������� ������� � ������������ MIME-���� ��������������� ������������
��������. ��������, � ��� ������� ��������, �����������, �� �������� ��
���������� ������ Web-���� ����������� ������������� �����
. ���������
���� �������� ��� ������ ������� �� HTML-�������� ����� ��� ������ ���������
���������:

Action text/html /cgi-bin/mockery.pl

MetaDir MetaSuffix

��������� MetaDir
MetaSuffix ��������� �� �� �������,
��� � ��� <����>, �� �������������� �������� �������� �� �����. ���������
MetaDir ��������� �������, � ����� ����������� �������� �������� ��������
����� � ���������������. ���������
MetaSuffix
��������� �������, ����� ���������� ����� ��� �����. ������ ����� ��������������
����� ����������
.meta; ���,
�������������� ��� �����
index.html
����� ��������� � �����
index.html.meta,
������������� � �����������, ��������� � ��������� MetaDir.

����� �������������� ������ ����� ��� ��
������, ��� � ��������� ������� � ���������
HTTP.
��������, ����� �������� ������� ���� � ����� ��������� ����� ��������
���������:

�������, 5 ���� 1998 ����, �����
��������� � ���� �������������� ��������� ������:

Expires: Sunday, 5-Jul-98 12:00:00 GMT

ErrorDocument

��� ��������� ��������� ��������� � ������������
����� ������ HTTP-������� ������
URL
�� ��� �� �������. ���� ������������ ����� ������������ ��� ������ � ������������������
��������� �� �������, ���������� ��������. �� �������� ���������� �� �
������� ������������ �����������є, ��� ��� ���� �� ������ �������� ��
������������������.

��� ��������� �������� ��������� � �����
�������� �������. ����� ��������, ����������� ��� ������ ������, ���������
����
srm.conf � ������� �� ���������.

���� ������� � �������

������ Apache
������������� ������� ����� ������������, ����������� ������� �������������
������� ����� �������; ��������� �� ��� ������� ���������� � �����������
������ ���������� �� ����� Web-����. ���� ������� � �������
(/usr/local/etc/httpd/conf/access.conf)
��������� �������� ���� ��������� ����� ����������� �� ������ ���������
���������.

����� ����, ���� ���� ������������ ���
����������� ������� � ������ ������� ��������� ������������� � �����������.
����� �������� ��� ����������� ����������� � ������� ������� � ������������є
.
��
������ ����� �� ���������� ���� ����������� �� ���������, ����������� ���
������ �������.

�������� � ��������� ���� access.conf.
�������� � �������� ����� �����
access, conf
������������� ��� �������� �������� �������: ���� ��� ��������

cgi-bin,
������ ��� �������� ����������,
� ������ ������������� ��������� ����������� ���������� �������� � ���������
���������.

������ �������� ��������� ��������� ���������
���������
CGI. �������� ��������, ���
� ����� ������������ ��������� �����
HTML,
� ������� ���
<Directory /usr/local/etc/httpd/cgi-bin>
�������� ������ ������ � ��������� ����� ��� ������������� �������� ��
��������� �������� cgi-bin. ��� ������ ��������� ���
</Directory>.

������ ��������� ������ ��������� ���������
�������:

<Directory /usr/local/etc/httpd/htdocs>

���� �� �������� �������� ��������� ��������
��� ���������� � �����
srm.conf,
������� ������ ��� ��������� � � ����
access.conf.

������ ���������, <Location>,
�������� ����� ������������ �������
Apache.
��� ������� ���������
<Directory>,
������ ������ �������� �������� ����������� �����
URL.
���� �����
URL ����� ��������� �� �������,
��������� ���� ���� ��������� ������ (������
*.html).
� ���������
<Location>, ��� ��������������
� �����
srm.conf, �������� �������,
������������� ��� �������� ����������� ��������� �������,
/status.
������ � ���� ������� �������� ������ ������������� ������
nowhere.com.
����
�� ��������
nowhere.com ��������� ������
������, �� �������� ����������� ������������ ���� ����������� � ���������
(���� �� ��������������� ������
mod_status.c.

��������� ���� access.conf
� ������� �� ���������. ������ ����� �������� ���������� Web-������������.

���������� Web-������������

���������� ��������� �������� ��������������
�������� ������ �� ������ Web-������������. ��� ��� ����������, � ���������

DocumentRoot ����� srm.eonf
�������� �������� ������� ��� ����� ����������. ������, ������� ������
�������� � ������������ ������� URL ����� �� �������� ������� �� �����
����������, �������������� ��������� �������� ������ URL:
http://www.shoop.com/home.html.

������ ����� ����, ��������� � ���������
DocumentRoot, � ��������� � ���� ��� �����
home.html. ���� �� �� �������� �������� ��
��������� ��������
DocumentRoot, ��
������ �������� ������� ����
/usr/local/etc/ http/htdocs/home.html.
�������� ��� ����� � ��������, ��������������� ��� ��������, � �������

ServerRoot ��� ��� ����������� �� �����������.
����� ������������ Web-������ ��-�������.

��������, ����������� �������������

�������� ����������� ����������� ��������������
���������
HTML ����� ��� ������ ���������
UserDir � ����� srm.conf.
��� ����� ������ ����� �������� ����������� � �������� ��������� ���� �������������,
�� �������� ����� ������� �����, ��������������� ��� ��������. �� ���������
��� ����������
public_html.

������ � ����� ��������� ������������ ���
������ ������
URL, � ������� ���� �
�������� ���������� �� ����� ������ (~), �� ������� ������� ���������������
��� ������������. ����� ������ �������� ������ � ����� ������� URL, ��
���� � �����
/etc/passwd ��������
��������� �������� ������������. ���������� ����� ����� ������� URL � ����
��������� ����� �� �������
http://www.shoop.com/~chris/index.html.

���� � ������������chris
���� �������� �������
/home/users/chris, a ���������
��������� UserDir ��������
public_html,
�� �� ����� ������� ������ �������� ����
/home/users/chris/public_html/index.html.

��������� �����������

�������� � ������������ ��������� ������� URL �������� � ����� �������
�����, ���������������� ����������
Alias
� �����
srm.conf. ��� ���� �����������
������������� �������� �����, ����������� �� � �������� �������� ��� ����������
��� ��� ������������. ��������, ���� ��� ����� ������������� ���������
�� ��������
/public/ftp/multimedia,
����� ������� �� ���������� �� �������
ShoopSoft
�� ������� ������
URL http:/ /www.shoopsoft.com/multimedia:

Alias /multimedia /public/ftp/multimedia

� ��������� ����� ������ Apache
��������� ������ ����� ������� �� ����� 50 �����������. ���� ���������
������� ����� �����������, �������� �������������� ������
MAX_ALIASES
� �����
/usr/local/etc/httpd/src/ httpd.h
� ������ ��������������� ������.

���������� ������

���������� ������ �������� ����� �� ���������
������������, ��������������� ��������
UNIX.
���� �������� ��������� ��������� � �������� ������� ��������� �� �����-����
������ ���� ��� �������, ����� ���������� ������ ���������� ��������� ����������
Web-����.

��������, �� ������ �������� � ���������
DocumentRoot �������� �� ���������,
/usr/local/etc/httpd/htdocs.
������ ��
������ ������� �������� ��������� ��� ���������� �������
/public/html,
����� �������:

#ln -s /public/html /usr/local/etc/httpd/htdocs

�����������, �������� ��� �������� ������������,
�������� �������� ������ �� �������� ������� ���������� �� ��������� ��������
�������. ���� ��� �������� ��������� �������� ���������� ��������������
�������� �� ���������,
/usr/local/etc/httpd/htdocs,
�� ������ �� ���� �� ��������� �������� ����� ������� ��� ������ �������

# In -s /usr/local/etc/httpd/htdocs /html

��� ������� �������� ������ � ������������
��������
ServerRoot, �������� �� �������������
�������� �� ���������� ������� ����. ��� ����� �������� ������� �������������
��������� ��� �������������, �� �������� �� ������
UNIX.
������������ ����� ��������, ��� �� Web-�������� ��������� � ��������

/html.
� ���������� ����� �������� ���������������
������� � ��� ����� ������. ������ ���� ������ ������� ����� ����������
������, �� �����, ������������� �� ����� � ����������, ����� ���������
�� ����� ��������������� �������������� ����� � ������������� ������. �������
�� ������ �������� � ����������� �� ������ ���, ��� ��� ����������.

������ �����������

��, ����� ������� �� ������ ������������
����������� Web-����, � ������� ������� ������� �� ��������� ����� �����������
� ���������� ������ �������, � ����� �� ����������� �������������. ��������,
������ ������������ ������������� �������� �������� ����� ���������. ���������������
����� ��������� �������� �������������� �� �����������, ������� �������������
������
UserDir (����� ��������� ��������
� �����������
public_html ���������
�������� ������������) �������� ����� ������ ��������. ����� ������� �����������
��������, ��� ������ � ������� �������������, � �������� ������� � ������������,
��� ���� �������� � ������� � Web-�����������. ����� �����, ����������
�������� ��������� ���������, ���������������� � �� �� Web-���������, ������
������������� ��������� ��������� ���� ���������� ��� Web-����������.

���� Web-���� ����������� ����������������
����������� ��� ��������, �� ��� ������ ������ ����������� �������� ����������
����� ����������. � ���� ������ ����� ������� ����������� ���������� �
������������, ����������� ��������������� � �������� �������� ����������.
��� ���� ��� ��������� ������������� ����������� ����������� ����������
���������� �� ����� Web-���� ����� ������������� ���������� ������ �� ��
�������� ��������� � ����������� ��������� �������� ����������, ��� �����
������������� ������. ���� �������� �������� ��������, �� ��� ���� �����
����� �������, �� ����������� � �������������� �������� �������� � Web-�����������,
������� ��� �����������. ��������, ��� ������ ����, �������������� �� ����
������ ��� �������, ����� ������� ����� ���������� ������, �� ��������
� ����������� �����-���� ����������. ����� ������������ �������� ����������,
��������� ����������� Web-���������� ����������� ��������������, �������
�� ������������� � �������� ��������� �����.

�������, ����������� ���� � ���� �������,
�� �������� ������������� ������������ ������ ��� ��� ���� ������. �������������
������ ������� �� ��������� ����������� ������������� ������.

������ �������

������, ����� ��������� ������� ���������,
��������� ����� ��������� � ��������� ��� � ������. ������� ��������� ������
������� �������, ����������� � ����������� �� ����, ������ �� ����������
����� ��� ������ �� ������
inetd.

���������� �����

����� ��������� ������ � ���������� ������, ���������� ������ ��������
���� ������ � ��������, ����������� ��� �������� �������. � �������

Linux ���� ���� ��������� ����������
/etc/rc.d/rc.local;
� ������ ��������
�� ����� ������ ���
/etc/rc.local,
���� ����� ������������� �������� ���������� �������� � ��������

/etc/rc2.d.
���� �� �� ������ �����, ����������
� ����������� ��������������, ������������ � ����� �������.

����� ���� ��� �������������� ����������
����� ����������, �������������� ������������ �����������������

(root) � �������� �������� � ���������. ��������
� ����� �������� ��������� ������:

if [ -x /usr/local/etc/httpd/httpd ]

then

echo “Starting HTTP Server”

cd /usr/local/etc/httpd httpd > /dev/console 2>&1

else

echo “Can’t start HTTP server!”

fi

��������� ���� � ������� �� ���������.
����������� ���� ������ ���������, ���������� �� ������
HTTPd;
���� ��, �� ������������ ��� ������. ���� ����� ������ ��� ��������� �
��������, ����������� ��� ������� �������, ��� �� ����� ��������� �� ���
���, ���� �� ����� ����������� ������������ ����������. ����� ���������
������ ����������, ����������, ������� ������������ �����������������,
������ ��������� �������:

ft cd /usr/local/etc/httpd �./httpd

���� �� ������ ��� � ����� /usr/local/etc/httpd/logs/error_log
�� ��������� ��������� �� �������, �� ������ ������� ����� ������� �������������
�������.

������ �� inetd

����� ������ ���������� �� ������ inetd,
����� ������ ��������� � ��� �����. ������ �� ���,
/etc/services,
������������ ��� ����������� ������ ��������� ������ � ������������ ��
����������. ���� ��� ����������� ������������� � ���� ��������� ��� ������
������������ ��������
NIS (����� ���������
��� ���������
YP), �� ���������� ����������
���������� ���� ��������� ��� ��� ������ �������
yppush,
����� ���������, ��������� � �����, �������� ��������. ����������������
������������ �����������������, �������� ����
/etc/services
� �������� � ��� ����� ������

http 80/tcp

������ ������, � ������� ���������� ������
���������, �������� ����
/etc/inetd.conf.
��� ���� ������������ inetd. � ��� ����������� ������ ������, ������� ������
������������ ����� inetd, � ��������, ��������������� ��� ����������� ����������.
�� ����������� �� ���������� �����������������, �������� ����

/etc/inetd.conf
� �������� � ��� �����
��������� ������ (������������, ��� ��� ��� � ���� ������):

http stream top nowait root /usr/local/etc/httpd/httpd
httpd

����� ������ ������ �������� ��� �����������
������
UNIX. ������������� ����������
���������� ����������� �������� �������
Ultrix,
� ������� ������������ ��������� ������:

http stream tcp nowait /usr/local/etc/httpd/httpd

��������� ����, ������� � Ultrix
�� ������������, ��������� ������ inetd, � ������������ ������ ������������
������� ��������� ������. �������
Ultrix
�� ��������� �������� ��� ������������; �������, ����������� �� inetd,
������ �������� � ������������ ������������
root.
��������� ��� ������������ ������������� ������ ��������� ������ ����������,
��� ������� ��� ������ ���������
User
� �����
conf/httpd.conf ��������
��� ������������ �� ����� ����������, ��������
nobody.

����� ���� ��� � ����� /etc/services
/etc/inetd.conf ���������
����������� ������, ���������� ��������� ����� inetd �� ���������� � ���
������ ������������. ��� ����� ������� ����� �������� inetd (���

PID) � ������� ������ ������ HUP (hang-up).
��� �������� ��� ������ ��������� ������ (� �������� �����
System
V, ��������,
Solaris Irix,

�������
ps ������� ������ ���������
������ ������������ �����
-aef):

# ps -aux | grep inetd

root 11253 0.0 3.4 156 256 p5 S 23:01 0:00 grep inetd
root 43 0.0 1.0 72 80 con S Feb 1 0:00 /usr/sbin/lned Kkill -HUP 43

�� ��������� ������� HUP
�����
inetd ������ ��������� ����
/etc/inetd.conf � �������� ������������� ��
������� ������� HTTP-����������.

������������ �������

����� ���� ��� ������ �������, �������
�������� ��� ������������. ���� � ��� ��� ���� �����-������ ��������, �����
����������� ������� ���� �� ��� ��� ������ ��������. ���� Web-������� �
��� ���� ��� ���� �� �� ������������ ���������, ����� �������������� ������,
��������������� ����� ��������� �������:

$ telnet localhost 80

Trying 127.0.0.1

Connected to localhost.

Escape character is “‘]’

��� ����� ����������� ���������� � HTTP-������
�������. ����� ���������� ������� �����������, ����� ���������, ��� ���
��������. ��� ����� ������� ��������� ������, �������� �� ���������� ��������
�������
Return:

HEAD / ����/1.0

����� ������ ��������� �������������� ���������
�������:

����/1.0 200 OK

Date: Friday, 12-Dec-94 05:44:30 GMT

Server: Apache/1.1

MIME-version: 1.0

Content-type; text/html

Last-modified: Sunday, 12-Dec-94 01:21:23 GMT

Content-length: 2342

Connection closed by foreign host

�����������, ��� Web-������ ��������! ������
����� ���������� � ������ ��� ����������, ���������� ���������� ��� Web-����!

������ � �������������

�� ��������� ������ Apache
������������� �������� ������� ������� ���������� ��������. � �����, �����
���� ��� ������� �������� � ����� �������� ������� � ����� ������������
������� �� �������, ����:

� �� ��������� � ����� �� ������������
��������
ServerRoot;

� � �������� ServerRoot
������� ���������� ������ �� ����;

� �� ������ � ��������� Alias;

� �� ��������� � �����������
publc_html
� �������� �������� ������������.

�������� �� �� ��� �� ��������� �������
�� ������� ������� ���� �� ������ ����������, ������
Apache
������������� ����������� ������ ��������� ����������� ������� � �������
������� ������������� � ����������.

��� ����� ���� ��� �������. ������ �����������
� ��������� ����������� ����� ������������ ������� � �������,

/usr/local/etc/httpd/conf/access.conf.

���� ����� ����� �������� �������� �������������� ������� ��� ����� �������
� �����. ������� ����������� ������������ ������ � ������������ ���������
�� ������� �� ������ IP-������� ��� ���� ����������� ��������. ����� �����
�������� �������� ��������, �������� ������ � ������� ������ ������������
������������� ��� ������� �������������.

� ������� �� ���� ���������������� �����������
�� ������ � ���������� � �� �������������, ������ ������ �������� ������������������.
������ ��������� ������������, �������������� �� ����� Web-������� ����
Web-�������, ����� ��������� �������� �������� � ����� �������� �����������
�����
.htaccess. ��������, ������������
����� ������������ ����������� �������� ��������, ����������� � ������

srm.conf
access.conf,

���� ��������� ��� ����������� � ���������� ����� ���������� ��������.

���� ������� ����� access.conf
���������� ��� ������ �������
Apache, ��
���� ��������� ��� � �������, ����������� ������������ �������. ����� ���������������
������������� ������������� ������������� � ���������� ��������, ����������
������ ��������� ������� ��������, ����������� � ���� �����. � �������
�� �������� � ������
httpd.conf
srm.conf,
��������� � �����
access.conf ����� ���������, �������� ����������
�����
HTML, � ������� ��������� ��������
�������� ������ � ����� ������. ��� ���������, ���������� ��������� �������
���������� ��������, ���������� ����������� ���������������. ���
������������ �� ������ ����� ��������� �� � ������� ������ (< � >).

��������� <Directory>
��������� �������, � �������� ����������� ����������� �������. ��� ��������
������ ���� ����������; ��������� ������������� ��������. � ��������, ������������
��������� ���������:

<Directory directory_name>

access control directives

</Directory>

� ��������� <Location>
�������� ������������ �����
URL, �������
����� ���������� ����� �������, ��������� ���� ��� ������������ ������,�����������
��� ������ ��������, ��������,
*.html �
��� �����, ����� ������� ������������ ���������
.html.
� �����
URL �� ���������� ��������
��������� � ��� �������, ���, ������
<Location http:// www.shoop.org/index.html>
�� ����� �������� ���������� �������������� ���������
<Location>.
��� ������ ����������� ���������� ���������
<Location>;

<Location URL>

access control directives

</Location>

��� ��������� ���������� ��������
(access control directives) ��������� �����
�������, ���������������� �������� � ���������� �������� � ���� �������������
� ��� ������ � ���������.

����������� ���� �������� ������������
� � ������������� ������������� ������
.htaccess.
��������� � ��� �������� ����� ������������ ����� ����������� �����������,
���� ����� ��������� ��������� � ���������
AllowOverride.

Allow/Override

��� ���������, ������������ ������ � �����
access.conf,
���������� ��������� �����
���������� ������ ������� � ����������������� �������
.htaccess.
� ��������� ����������� ����������� ��������� ����� ���������� ��������,
��������������� ������� � �����
.htaccess,
����������� � ������ ��������� ���� ����� ��������, ���������. ���������
�������� ���������:

� None. ������ ���������� �����
.htaccess �
���� ��������. ���� �� �� �������� ������������ ��� ��������
�����
.htaccess, ��� �������
���� ���������� ��� �����, ��������� ��� ������� ������������������ �������.

� �ll. �� ��������� ������������
����� ����� �������������� � ������
.htaccess
��� ���������� ��������� �������, ��� ������� � ���� ������ ������� �������������
�������.

� Options. ��������� �������������
���������
Options (��. ���� ������
�Options�),

� Filelnfo. ��������� �������������
� ������
.htaccess ��������
Add-���� � AddEncoding
(��. ������
�srm/conf: ����� ��������
��������, ���������� ������ ��������).

� AuthConfig. ��������� �������������
��������
AuthName, AuthType, AuthUserFile
AuthGroupFile, ����������� ��� ������
��������� ��������.

� Limit. ��������� �������������
��������� ���������������
<Limit>.
��. ������, ����������� ���������
<Limit>,
� ������� ��������� ��������� ��������.

Options

��������� Options
��������� ��������� ���, ����� ������� ������� �������� ��� �������������
� ��������, ��������� � ������
<Directory>
��� � �����
.htaccess. � ���������
Options ����� ������������ ��������� ���������:

� None. � ��������� �������� ��
����������� ������������� �����-���� �������.

� All � ��������� �������� �����������
������������� ���� ������������ (����������� �� ���������).

� FollowSymLinks. ������ �������
���������� �������, ��������� � ��������� ��������.

� SymLinksIfOwnerMatch. ������ �������
���������� �������, ������ ���� ������� ���������� ����������� ���� ��
������������, ��� � ���� ������.

� ExecCGI. � ��������� ��������
����������� ���������� ���������
CGI.

� Includes. � ��������� ��������
��������� ������������� ��������� ���������. ������������� ��������� ���������
�������, ����� ������ ���������� �������������� ������ ���� HTML-������
����� ��������� �� ��������. ������ � ��������, ��� ��� ������ ���������
������, ������� �� �� ��������������� ��������� ��� �����. ���� ��� ����������
��������� ���������, ��������� �� �� ������ ��������� ������ ��� ������
���������
AddType, ��� ��� �������
� �������
�srm/conf: ����� ��������
��������

� Indexes. ������ ��������� �������������
���������� ��������� �������� ���������� ��������. ���������� ���� �����
��������� �������� ������ ������ ������ � ��������, �� �� �����

index.html.

� IncludesNoExec. ��� ���������
��������� ������������� � ��������� �������� ��������� ���������, �� ���������
������ �� ��� ������� ��������.

XBitHack

��� ����� ��������� ������, ����� �� ������
����� ��������� HTML-��������� ������ � ��� �����-���� ����������� ��������.
����� ��������, ���������� ���������� �����������, ��������� ��������
� �������� ������ HTML-��������, ��������� �������� CGI � �������� � ��������

��� �����, ���� ������� ���������� � ��������,
�������� ���� �� ���������� ���������. ���� �����
XBitHack
��������, ��� ��������� ������ ������� ���� �����������, � ������ ������
����� ��������� ���������. ������� ���� ����������� ����� ��� ������ ���������
�������
UNIX:

$ chmod �+� ���_�����

��� ���_��,��� ����� �������� ������
�����, �������� �������� �� �������.

���������, ����������� � ����� ��������

���� ��������� ��������, ������������ ��
����� ������������ ����� �������� �������
(srm/conf),
�������� � ������� ����� �������� ��� ��������� ���������. �������� � ���������
����������, ��� ��� ���� ��������� � �������
�srm/conf:
����� �������� ��������, �������������� �������� � ���������� ����� ������������
��� ���� ���������:

� AddType

� DefaultType

� AddDescription

� Addlcon

� Indexignore

� Defaultlcon

������ ������������ � ������

������ Apache
������������� ����������� ���������� ������� � ��������� ��������� �� ������.
��� �������������� ��� ������ ��������� � ���������� ����� ������������,
���� � ���������������� ������
.htaccess.
����� �������� ������� �������, ���������� ������ �������� � ���� ���������
����������:
AuthName, AuthType
AuthUserFile. ������������� ��������� ���������,
AuthGroupFile, �� �������� ������������.

��������� AuthName
������ ������������ ����� �������� ������, � ������� �������� ������, �������������
� ������������.

������ ������ ��������� ���������,
AuthType, ��� �����. � ��������� AuthType
�������� ����� ������������� ������������, ������������ ��������. � ���������

AuthType ����������� ��������� ������ ���
��������,
Basic Digest.

���� ���������� �������� Basic,
�� ����� �������������� ����������� ���
UNIX
�������� ��������� ������, � ����� ��������� AuthUserFile. ���� ������
� ���������
AuthType ��������
Digest, �� ����� ������������� ����� ��������
������� ����������, ��������
MD5. ��
����������� Web-�������� �� ����� ������������ ���������
Digest,
��������� ��� ����������� ���� �� �������������� ������������ ���������.
�� ������� ������������ � �������� ��������� ��� ��� ��������������� ����������,
����� �� ������ ��� ��������, ������������� ����� ������ ��������������.

� ��������� AuthUserFile,
������������ ������ ��� ��������� ������
Basic,
�������� ������ ���� � �������� ������� �������
Apache
� ����� ������� ������������� ��� ������� ��������. ��� �������� �����
������� ����������� ���������
htpasswd,
������� ����� ����� � ��������
/usr/local/etc/httpd/support.
��������, ����� ���� ������� ��� ������������
mdw
��������� ��� ������ ��������� �������:

$htpasswd -� /html/secured/.htpasswd mdw

Adding password for mdw.

New password:

Re-type new password:

����� -� ��������� ��������� htpasswd,
��� ������� ������� ����� ���� �������. ���� ��� ����� �������, ���������
�������� ��������������� ������������ ���� �������.

���� ������ ����� Digest,
�� ������ ������� ����� ��������� � ���������
AuthDigestFile.
��� � ��� ��������� AuthUserFile, ������ ������� � ��������� AuthDigestFile
���� � �������� � ��� ����� �������.

����� ������� ���� ������� � ���� ��������,
�������������� ����������
/usr/local/etc/httpd/support/htdigest.
����������� ���� ������ ������������ ������������� ���������
htdigest
��� �������� ������ ��� ������������
jem:

$htdigest -� /etc/dlgest_passwd “shoop-users@www.shoop.coni”
jem

Adding passowd for jem. New password:

Re-type new password:

������������ �������� �� ������ �������������
���������
htpasswd �������� �����������
���������
shoop-users@www.shoop.com,
��������������� ����� �������� �������, � ������� ���������� ������������
jem. ������� ������������, ���� ������������ ����� � ����� ������� �����
������ ����� ��� ��������� �������. ����� ������������ �������� �������,
������������ ��������, ��� ������� ������ ��� � ������ ������ ��� �����
������.

����� ���� ��� ����� ��������� ����� �������������
�������������, ����� ��������������� ��� ��������� ������ �������� ���
����� ����������,
AuthGroupFile. ����,
��������� � ���� ���������, ������ ��������� ������ ����� � �������������,
������������� � �����
AuthUserFile, ����������
������� ���� �����, ��������:

smers: mdw ewt jem merry mgd

����� ������ ������� �� �������
Apache ��������� ������ smers
� ����� �������.

<Limit>

��� � ��������� <Directory>,
<Limit> �������� ���������� ���������������.
��� ������������ ��� ��������� ����������� ������� � ������ � ��������
�� ���������
HTTP. ���������
<Limit> ����� ������������ ������ ������
<Directory> � ����� access, conf,
���� � ���������������� �����
.htaccess
(���� ����� �� ������������ ��������, ��������� � ���������
AllowOverride).

��������� <Limit>
��������� � �������� ���������� ���� ��� ��������� �������
HTTP,
� ������� ��������� ��������� ������ ���������, ������������ ������ ������

<Limit>: deny (��������), allow
(���������),
order (�������) �
require (�����������).

��������� deny
allow ���� ����������� ��������,
����� ����������� � ������� �������� ������ � ������ ���������. ���������
���� �������� ��������, �� ������ �� ��� ������� �����
�from�
� ������ �����������, ������� ������ ������ ��������� ���, ��������, ���������
������ � ��������. � ���� ������ ����� ��������:

� �������� �������, ��������
shoop.com
��� cia.gov.

� �������� ������, �������� grumpy.shoop.com
���
bhurma.cia.gov.

� IP-������ ������, ��������
115.23.42.5.

� IP-������ �������, ��������
115.23.42.

� ����� all,
���������� ��� �����.

� ��������� order
�������� �������, � ������� ������
Apache
������������� ���������
deny
allow. ���������� ��� ���������� ��������:

� deny,allow. ������� ������ �������������
���������
deny, � ����� � allow.

� allow,deny. ������� ������ �������������
���������
allow, � ����� � deny.

� mutual-failure. ������ ����������
� ������� ���� �����������, ���� �� ��������� � ������
allow.

��������� ��������� � require.
�� ����� ������������ ��� ������������ ��������� ������ ��������. �� ���������
��������� ������ ��������� ������
���������. ����� ���������� �����
������� ����� ������������� ��� �������� �����, �������� � ���������� AuthUserFile
���
AuthGroupFile. ����� ����� ���������������
�������� ������
valid-user,
����������� �������, ��� ������ ������������, ��� �������� ������������
� ���������
AuthUserFile, ������ ����
������������ ������ � ������ ����� �� ����������� ������.

���� �������� ������ ����� .htaccess,
������������ ������ ������ �������������� ������������� ������
nsa.gov:

AuthUserFile /home/users/onorth/www/secure/.htpasswd

AuthName SecurityTest

AuthType Basic

<Limit GET>

order deny,allow

deny form all

allow from nsa.gov

require valid-user

</Limit>

������ ��������� �������� ���������
<Limit> � ��������� ������������������:

1. ��������� ����� ������.

2. ��������� ������ ������������� �� ������
nsa.gov.

3. ������� �� ������������� �� ����� ������
����� ����� � ������, ���������� � �����
/home/users/onorth/www/secure/.htpasswd.

���� ������ ������ ��� ��� ��������, ��
�� ���� ����� ������������� ����� �� ������� ��������.

���������� ������������� �������������
� �������������� ������
DBM

������������� ������������� ��� ������
����������� ������ ������� ������������ ����� �������� ������ ������ �����
� ������� ����������. �� Web-�������� � �������� ������� ������� (�������
���������� �����) ���������� ��������� ��������� ������� �� �������� ��������������
������ �����. ������
Apache �������������
����������� ������������ ��� �������� ������� � ���������� � ������� �����
���� ������, ���������� DBM-�������. ��� ����� ������������ ����� �����������
���� ������, �������� ���������� � ������������ �������� (������) �����
(��� ������������), � ������� �������������� ��� �������� ������ ����������
�����.

��� ��������� DBM-������ ������� ���������
������� ��������� �����. ������ �����, ���������� ������
Apache.
��� ����� �������������� ������������ �����������������
(root),
��������� � �������
/usr/local/etc/ttpd
������� �������
�kill -TERM ‘cat logs/httpd.pid’�
(����� ������������ ������ ��������� �������� �������).

����� ���� ��� ������ ����������, ��� ���������
��������� ���������
DBM ����������
������ ��������������� ������ � ��������� ��������� ����� �����:

� ��������� � ������� /usr/local/etc/httpd/src
(���� ����, ��� �� ���������� �������� ����� �������
Apache)
� �������� � ��������� ����
Configuration.

� ��������� � ������ 78 � �������� ����
-Indbm � ��������� EXTRA_LIBS=.

� ��������� � ������ 242 � ������� �� ������
�#
Module dbm_ath_module mod_auth_dbm.o�
������ ����������� �#�.

� ������ �������������� �������� ���

������, ����� ������ �������������� ������
� ����� � ������, ������� �������� ��������� � �����
access.conf
����� �������, ����� ������ ������ ������� �������������� DBM-�����. ��������
� ��������� ����
access.conf
�������� ���������
AuthUserFile �����
����������,
AuthDBMUserFile;

���� ��������� ������������ ������, ��
�������� ���������
AuthGroupFile ����������
AuthDBMGroupFile. �������� ����� ������, ���������
� ����������, ����� �������, ����� ������ ����� �� ���� ������, ��������:

AuthDBMUserFlle /etc/dbm_htpasswd AuthDBMGroupFlle /etc/dbm_htGroup

������ ����� ��� ������ ������������� ������.

� �������, �������� ���� �������, ����������������
����������
dbmmanage, ����������� �
��������
/usr/local/etc/httpd/support.
��������� ������ ������������ ���������� ������������ � ���� ������� /
etc/dbm_htpasswd:

# dbimnanare /etc/dbm_htpasswd adduser bob
xists2me User bob added with password xlsts2me!, encrypted to XXLlyUj92/ZyI

��������� dbmmanage
����� �� �������� � ������� ��������������
peri,
��������� � ����� �������. ��������,
dbmmanage
�� �������� � ���������������
peri
������ 5.001,
patchlevel 1m. (�����
����������, ����� ������ ������������ � ����� �������, �������� �������

�peri -v�.) ������ �������� �����, ���� ����������
peri 4.036 (��������, � ��������/usr/bin/perl4.036
���
/usr/local/bin/perl4.036). ��������
������ ������ ��������
dbmmanage � �#!/usr/local/bin/perl�,
������ � ��� �������������� ���14.036, ��������,
�#!/usr/bin/ ���14.036�.

��� � ���, ��� ����������� ������� ���
��������� ��������� DBM-������ ������� � ����� �������, � ���������� �������
������ ������ ������� � ������ ������ ����������� ������.

����� ��������� ���������� �� �������������
��������� DBM-������ ������� ����� ����� � ����������� � �������

Apache �� ������ http:// www.apache.org/docs/auth_dbm.html.

����������� ������������

��������� ����������� ������

������� ����������� ������ ��������, ����� ���������� ����� ���������
���� Web-����, �� ��������� �� �� ��������� ������������, ������������
� ������ ����. �������������, ����� �������� ����� ����
http://www.shoop.com,
���� ��������� ������ ��� ���� ������� ��� ���� ���� ������. Web-����,
������������� �� ������������ ������������ �� ������ �������, ������� �����
����
http://www.websites.com/ shoop
���
http://www.shoop.com/shoop.
� ��������� ������, ������ �����
http://www.shoop.com,
�� ��-�������� �������� ��
http:// www.websites.com
� ��������
/shoop �������� ������������.

��� ������� Apache
���� ����������� ��� �������� ����, ����������� Web-���� ����� �����������
���. ������ ������� ������, �� � �������� �� ����� ����������. ������ �������
�����, �� ������������ ��� ����� ������ ����������� ��������, ��������

Netscape Navigator ������ 2.0 ���
����� �������. �����, ����� �� �������� ���������� ����������� ������ ���������������,
�� ��������� � ����������� ����� ��������� ���������� � ����������������
�������.

������ ������� �������� � ���� ��� ����.
������ ����� ������� ���������������� ��������� IP-������� ���, ����� ���
��������� �� ���� � ��� �� ������: ��� Web-������. ���� ������ ��� ������
������� ��� ������� ������������� ��� ���������. ��������� �� ��������
� ������� ����
(name server) �����
���� �������� ������, ���
�A-record�.
� ���� ������ ������ ������� ��������� IP-����� ��� ������ ����� ������
�����, �������� 10.1.12.236 ��� www.virtualpizza.com.

�� ��������, ��� ������ ������ �������
��� ������ ������������� ��� ��������. �������� ������ ������� ����������������
� �����������
InterNIC. ����������
� �������� ��������� �� ���������� Web-����
InterNIC,
����������� �� ������
http://rs.internic.net/help/.

��������� ����� �������� ��������� ������
���������� �� ����� ������� ��� ���������� IP-������� ����� ���� �������
��������� (��������, ������� �����
Ethernet).
����� ������ �������� ������ �������� ����������, ������� ��� ����������
�������
ifconfig, ��������:

ft ifconfig

ethO Link encap:10Mbps Ethernet Hwaddr 00:20:OD:OA:24:FF

inet addr:10.1.12.15 Beast: 10.1.12.255 Mask
255.0.0.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets: 13802051 errors:19 dropped:19
overruns:5

TX packets: 8357357 errors:0 dropped:0 over
runs:0

Interrupt: 10 Base address: 0�300

� ������ ������ ������� ��������� �����
�������� �ethO�, ������� �����
Ethernet.
������ ���������� ������ ������ �����-��������� � ������ ����� ��� ���
�� ����� �����.

���������������� ������������ �����������������
(root), ��� ������ ����������� ���� �������
ifconfig ������� ��� �������� ���������� ����� ������� ��� ������� IP-������:

ftifconfig ethO alias 10.1.12.256

������ ������, ��������������� ��� ���
������� ������, ��� � ��� ������ ����������, ����� ��������� � ���� � ��
�� �����.

�������, ���������� ������ ��������� �
����� ������������. �������� � ��������� ����
httpd-conf
� ������� ������ ����������� �� ������ �����, ������� �
<VirtualHost
host.foo.com> � ������ ������� </
VirtualHost>
������������. �������������� ��� ������, ����������� �������� ��������
��� ������ �������. ��������� ������ �������� host.foo.com � ����������

<VirtualHost> ServerName
��� ����������,

������� ��� ��������� ������������ (� �����
������� �
www.virtualpizza.com).
�������� � ���������
DocumentRoot ������
��������� �� ��������� ������� �������� ����������, ���������� ���������������
��� ����� �������, ��������
/usr/Iocal/etc/httpd/pizzadocs. ���������
ErrorLog AccessLog
�������� ��� ����� ��������� ���������� ����� ��� ������� �� ��������,
������� ����� ����� �������� ����� ���������� ������ ����� �������, �����
��� ��������������� ������ ��������, �������� ���� ��� ����� ���������
� ����� ��������.

��� � ���, ��� ����������� �������. �������������
��������� ������� ���� � ������������ �������� ���������� ���� �������
���, ��� ������� ������ ��������� ����/1.0 �� ������������� �����������
������������ ����� ����� ����������. ������� �������� ������� �� �����
����� ��� IP-�����, � ����� ���������� � ����� �����, �� �������� � ����
��� ���. ������� � �������� ��������� ���� ����� ������ ��������� IP-�����
��� ������� �������. ������ ����� ������� � ��������� �� �����������, �
���������� �� ��� ������� ������ �������� ������� ����� �������.

������ ������� ����������� � �������������
������������ ����/1.1, ������ ���������
HTTP,
�� ��� ��� ����������� � ������ �����������. �
HTTP/I.I
������������� ��� ������� ����������, � ������
Apache,
����� ��� � ��������� �������� (�������
Netscape),
���������� ���� ������������. ��� ��������, ��� ����� ���������� ���������
�������� �� ����� IP-������. ��� ����������� ����������� � ��� ����. ������
��� �����-���� ������ ������� ������� ������������� ��� ���������. �������
������������� ������ ������ ��� ������� ����������ϔ ������� ���������,
���������� ������� CNAME, ����������� �� �������� ��������� � Web-��������.
� ����������� ���� ������� ������������� ������ ��� �� ������� ������ CNAME
��� �������� www.virtualpizza.com, ����������� �� ��������� ������, ��������
pizza.food.net.

������ ��� ��������� � ��������� �����
���������� ���������: ���������� ������� ������ ����������� �� �����������
� ���������
Virtual-Host ����� �����
httpd.conf
� ��������� ������ ��������
�� ��������� ���������� � ����� ����������� Web-�������.

��������� ������-�������

��� ��� ����������� ����, ��� ������������
���������
CacheNegotiated-Docs, ������-������
��������� ���� ���������� ����� �������� � ��������. ������ ����������
� ������ ������-�������, � ��� ���, � ���� �������, ���������� ��������
��� �������, ����������� ��������� ����������. ������ ����������� ��������,
�� � ��� ���������� ����������� ������-������ ��� ���������
HTTP
(��� �������� �� ���. 8). ���� ������ ����� ���������� ������-�������,
������� ������������� ������ � ��� ������ ����������� �������� � ����������
�������. ��������� ������ � ����� �������� �������� ������-�������. ������-������
�������� �����
�������, ��������� ���
�������. ������ ����� �������� ������������ � ����� ������ ����������,
����� ���� ��������� �� ������������, �������������� ���������� ������
����������� ����� ������������, ������������ �� ������ ��� �������.

������ �������� ������ ������������ � ���
��������� ������� � ����� ������������� ����������. �� ���������� �������
��������������, ��������� � ���������� ������, ���������� �������� �����
���� ��������� ��� �������� �� ������-�������. ����� ��������� ������
���������� ��� �� ��������, ������-������ ������ �������� �����, �����������
��� ���������� �������, �� ��������� �� ���������� � ��������. ���� �����
������������ �������� ������������ � ���� ���������� ��������, ��������
����� ��������� � ���������������, ��� ���������� ������� ������� �����
����������� ���������� � ���������.

��������� ������ Apache
� �������� ������-������� ����� ������. ��� � ��� ����������� ������ ������������,
��������� �������� �� ��������� �������� ������ ��������� � �����, � �����������
�������, �������������� � ������������ ����. �������� � ��������� ����

httpd.conf,
��������� � ������,
�#Proxy Requests On�. ���� ��� ��������� ������
�������� �������� ������, �� �� ��������� ���������� ���������, ������
������� �� ���� ������ ������ ����������� #. ������ ������� ���� �� ���-����
�������� �����������, ������� �� ���������� �����, ����������� � �������
�������������� ������������ ���� ����� ������������� ���������.

������ � ������ �������� �� ��������� �����
���������
CacheRoot, � ������� ��������
������� ��� �������� ���������� ����������. ������� �� ���� ������ (� ��
����� ���� ������ ��������
Cache) ������
����������� � �������� �� � ������, ���� �������� � ���������
DocumentRoot
���������� �� ��������� �� ���������.

�� ������ ���������, CacheSize,
����������� ����� ��������� ������������ � ����������, ���������� ��� ��������
������������ ����������. ������ ����� ��������� ���� �����, �� ��� ������
��� ��������, �� ������ ������� ����� �� ������� ����, ����� ����� ���������
�� �����. ��������, �������� �� ���������, 5 ��������, � ����������������
�������� ����� ��������� ��� �������, ������������ ����������� �����������
��� �������� ����� ��������: ������ ��������� �� ���� ������� ������������,
����������� ����������� ������-�������
Apache,
�������� 7 ��������. ���������
CacheGcInterval
������ ��������, � ������� ������������ �������� ������� ������� ����;
�� ��������� �������� ������������ ������ ������ ����.

��������� ��� ��������� ��������� �������������
����� ���������� ��������� � ������� ����. ���������, ������������ ���
������ ���������
HTTP, ������ �����
���� ��������� ����� ��������, ����������� � ��������� ��������� ��� �
������� ��������������. ���� ���� ��������� ����� �������� �� ��������
���� ��� ������� ��� ������� �������, �������� ����������� ��� ���������.
� ���������
CacheMaxExpire ��������
������������ ���������� �������, � ������� �������� �������� ����� ����������
� ������� ����, ��� ����������� �� ��� ����� ��������. �� ��������� �����������
�������� 24 ����. ���������
CacheLastModifiedFactor
���������, ����� ������� ������� ��������, �� ������� ����� ��������. ��������
����� �������� ���������� �� ���������� �������, �������� � ������� ����������
��������� ���������, � ���������� ��������� ����������� � �������� ������
����� ��������. ��������, ���� ��������� ��������� � ��������� ���� �������
24 ���� �����, � � ��������� CacheLastModifiedFactor ���� ��������� ��������
�� ��������� � 0,1
, �� �������� �����
������ �� ������� ���� ����� 2,4 ���� (24 �������� �� 0,1). ���� ���� ����������
��������� ����-

��, ��� �������� � ��������� CacheMaxExpire,
�������� ��� ����� ����� ������ �� ��������� �������, ���������� � ���������
CacheMaxExpire. ��������� ���������, ��������� �� ������� �������� ����������,
������������ �� �
HTTP, � � �������
�����������, �� ���������� ���������� ���������� � ������ ��������. ���������

CacheDefaultExpire, � �������� �� ���������
��������� � ���� ���, ���������� ���������� �������, � ������� ��������
�������� ����� ���������� � ������� ����, ���� ���� ���� ���������� ���������
��������, ������������� � ��������� CacheMaxExpire.

�������, ��������� NoCache
������������� ����������� ��������� ����������� ����������, ����������
�� ��������� ��������. ����� ������� �������� ��������� ��������, ��������

www.virtualpizza.com,
��� ����� �������,
��������
shoop.org, � � ���������
������ ����� ��������� ����������� ���������� �� �������� ����� ������.

����� �� ������������, ������ �������������
������� �� �������� � �����
httpd-conf,
�������� ���������
Proxy Pass. ���
��� ���� ������ ����������� ����������, ��� ������� ������ �����������
�������� ��������������� � ������-�������, � ��������� ������� �� ����������.
��������� ����� ��������� ���������:

ProxyPass /mirror/toppings http://pepperoni.org/docs

� ��������������� ������� �������
Apache ������� ����������� ��� ���������,
���� � ������� ���������� �
/mirror/toppings,
�� ��������� Web-����
http://pepperoni.org/docs
� ������������� �� ��������, ��� ����� ��� ��������� ��������� � ��������
������� �������. ��� ���� ������ ����������� Web-����, ��������� ����������
����������� ����������� ��������� � ��������� Web-��������, ��������� ���������
������
URL. ������ ������� �����������
���, ��� �� ������� ������������ ����������� ���������� (����, �������,
�������� ���������
Cache), ��������
������� ������� �������� �� �����������. ���������
ProxyPass
��-�������� ��������� �� ������ ����������, ������� ����� ����� ����������
��, ������ ��� ���������� � �������� ������ �� ����� Web-�������.

����������, ����� ������������� ���������
�� �������

���� �� ���� ��������� ErrorDocument
��������� ������� �� ������� ����� �������������� ������������. ��� ������
������������� �����, ����������� ��������� ���, ��� ����� ������������
� ������ �����-���� ���������, ��������, ����� ������������� �������� ��
������ ��� ��������
CGI �� ���������
�������� ����������� ������. ������ ���������
ErrorDocument
��������� �������� �� ������������ �������, ���� ��� ��������� ����������,
��������� ������, ������������ �������� CGI. ������������ ���������� �����
�������������� ��� �������� �������
�����
�������������� ��������� �� ������ ���� ��� �������� ����� ��������� ������
�� ������ � ���������� �����.

�������� ���������� ��������� ErrorDocument
�������� ����� �������. � ��� ���������� ��������� ������, ������������
�������, ���� �����, �� ������� ���������������� ���������� ������. ���������
���� ���������:
<ErrorDocviment
�o�_o�u��u
����Ĕ,
��� ���_������ ���������� ����� �� ����� ������
HTTP
��������� (����. 3-2), ������� ������������ �������� ���������, � �����
��� ���� �����
URL, ���� �����,
������������ ������� � �������� �������� ������.

������� 3-2. ���������������� ���� ��������
HTTP ��������� � �������������


 

���� �������� HTTP ��������
200  ���:
�������� ���������� � ������ � ���� ��������.
302 �Found�:
��������� �������� ��������� �� ������� ������ URL.
400 �Bad Request�:
������ �� ���� ���������� ������.
401 �Unauthorized�:
������ �� ����� ����� ������������ ������ � ��������� ��� ����������� ����������.
403 �Forbidden�:
������ �� ��� ����� ��������������� �� ������������� ��������� ��������.
404 �Not Found�:
�������� �� ������.
500 �Server Error�:
�� ������� ��������� ������.
501 �Not Implemented�:
����������� ����������� �� �������������� ��������.

 

� ��������� ������� ������������� ��������
ErrorDocument ��� ��������� ����������������
������� �������� ��������� ���������� ���������
ErrorDocument:

ErrorDocument 401 http://www.subscribe.coni/form.html

ErrorDocument 404 “There’s nothing here by
that name,

Check your spelling.”

ErrorDocument 500 /errors/blaine_interni.html

� ������ � ������� �������� �������� ������������
����� URL, �� �������� ����� ��������� ������. � ������ ������ ��� ��������
�� ������

�������, � � ������� � �������� ���������
�� ������ ����� ��������� ��������� ��������. �� ������ ������� ��������
� �������� ������ ����� �������� ��������� ������. �������� ��������, ���
��� ������ �� ������� � �������, � ������ ���������� � ������� �������.
��� ������ ��������� �������, ��� ��� ����������� ������� ������� ����������������
��� ��������� ������, � �� ��� �����
URL.

����� URL � ��������� ErrorDocument
����� ������ �����
HTML ��������� ��
��������
CGI, �� ���������� �����������
���������� � ��������, ������������� ���������� ������. ������� ������
������ �������� ������������� ���������������
NCSA
������� (�� ������������ ���
NCSA HTTPd
1.4, �� ��������� �������� � � ��������
Apache). ����
��������, ������� ��������
nph-eror.pl,
������������� ��� ���������������� ��������� �� �������, ������������ ��������,
� �������, ��������������� ����������� ����� �������� ��� ���������. ���������
�������� � ��� ������� ��� ��������� CGI (��������,
/usr/local/etc/httpd/cgi-bin),
���������, ��� �������� �������� �����������
(�chmod 755 nph-error.pl�
� ��������� ������
UNIX), � ����������
��������� ���. ����� ������ ������ ��������� �� ��������� ��������� ���������,
�������� ���� �� ��������
ErrorDocument
�������� ��������� �������:

ErrorDocument 404 /cgi-bin/nph-error.pl

� ���� ������� �������� ����� ����������
��� ������ ������� �� �������������� ��������. � ���������� �� ��� �����
������������� ���� ��������, �� ����������� ������������ � ��� ����� ��������
� ��������� � ��� ����������� ����, ��������� � ���������� ������.

����� ��������� ���������� �� ���������
������ � �������������� ��������� CGI ����� ����� � ������������ � ��������

NCSA �� ������ http://
hoohoo.ncsa.uiuc.edu/docs/setup/srm/ErrorDocument.html.

��������� ������ �������

������������� HTTP-������� � ��� �� ������
���������� ��������� � ��������. ����� �� ��������� ��������������, ���������
��������� ��������� ������� ����� �������� ������.

������� � ���������� �������

���� ������ ������� ������������ �� ������
inetd � ��� ���������� ��������� ������ �
Web-������� �� ���������
HTTP, �������
��������� ������ inetd ������ �������������� ����� �������. ����������������

������������ ����������������� (root),
��������������� � �����
/etc/
inetcLconf
������, ���������� �� ������ �������:

�http stream top nowait root /usr/local/etc/httpd/httpd
httpd

��������� ���� � ������� �� ���������.
����� ��������� ��������� �������� ��������, ���������� ������� ������

inetd ������ hang-up,
��� �������� ��������������� � ������� ������� �������� �� ���. 97.

���� ������ ������� � ���������� ������
� ��� ��������� ��� ����������, �� �������������� ������������ �����������������

(root) � ������� ��������� �������:

#cd /usr/local/etc/httpd

#kill ‘cat logs/httpd.pid’

���� ������ ������� � ���������� ������
� ��� ������������ ���������� ����������� ������������ ���������� ������
��� ���������� ��������� � ������ ������������ �������, ���������� ����������
���������� ������� (��� ������� ��� ������
hang-up).
��� �������� ��� ������ ���������� �������� ���������� �������:

ftkill -1 ‘cat logs/httpd.pid’

� ���������� ���������� ���� ������� HTTP-�������
���������� ������
HUP (hang-up). �������
������, �������� ����� ������� ���������� ��������� ��������:

� ���������� ��� ����� ������� � ���� ��������;

� ���������� ��� ��������� ����� �������;

� ������ ��������� ����� ������������ �
���������� �� �������������� ������;

� ��������� � ����� ��������� ����������
�����;

� ������ �������������� ��� ��������, �����
��������� � ������� ������� �� ���������
StartServers
� �����
/usr/local/etc/httpd/conf/ httpd.conf.

��� ������, ������ �������� ������. �����������,
������ ������� ������
hang-up, �� �����������
����� ���� ��� ���������� � ��������� ���������. ���� ��� ������ �������,
�� � �����
ErrorLog �������� ���������
����:

[Tue Apr 11 23:00:05 1995] httpd: successful restart

������� ���������� ������ � �� ������

�� ��������� ���������� ����� ���������
� �����������
logs ��������, ����������
� �������� ��������� �������� ������� � ���������
ServerRoot

� ����� httpd.conf
(������ ��� �������
/usr/local/etc/httpd).
� �����
access_log ������������
���� ���� ���������� � ����� ��������. �� ����� ������������ ����������
����������� ��� ���������� ������� � ������ �������. ��� ������� ����������
�������� ������������ ����������� ���������� ������, ������ �������������
� ������ ������ ������ ��� ������. ��� ����� ����� ������������ ���������
���������:

ftcd /usr/local/etc/httpd

ftmv logs/access_log logs/access_log.name_of_inonth.year

ffkill -1 ‘cat logs/httpd.pid’

������ ���������� ���������� �������������
�� Web-����. � ��������� ������ ��������� ��������� ��������� ������� ����������
������:

� Wusage, ����� � ����� �������,
ht1a�://siva.cshl.org/wusage.html.

� Fwgstat, ����� � �������� �����,
http://sunsite.unc.edu/jem/fwgstat. html.

�GetStats, ����� � ����� ����,
http://www.eit.com/software/ getstats/getstats.html.

� wwwstat, ����� � ��� �������,
http://www.iscuci.edu/WebSoft/ wwwstat/.

� gwstat, ��������� ������������
������������� ������ �� ���������
wwwstat,
����� � ������� ����,
http://dis.cs.umass.edu/stats/ gwstat.html.

If you want to display the contents of an index.html file when a request is made to your website domain, let’s say it is domain.com, then all you have to do is to upload the index.html file to the correct document root directory on your server.

The document root is the folder where the website files for a domain name are stored.

Document root directories might be named differently depending on your server configuration, however, they’re conventionally named as such:

/www/
/public_html/

They also might live within another directory such as

/home/myusername/public_html/ 

Your primary domain is generally rooted in the www or public_html folder.

When someone tries to load your website and does not manually type in a file name (such as index.php or index.html), the server attempts to load the “directory index”. The directory index is a listing of files it should load.

For example, if you type in domain.com (i.e: not domain.com/index.php), the server will attempt to load files in the following order. If a file is not found, then it tries to load the next file in the list:

http://domain.com/index.html
http://domain.com/index.htm
http://domain.com/index.php

…and finally, if your server does not find any of these files, it then simply returns a listing of all of the files in the directory. See Image

To prevent this, one should create an index.html file and upload it to the server’s document root directory as we mentioned before.

Try creating your first .html file with a simple text editor by copying the html markup below into a new file and then save it as index.html or download the file here

<html>
<head>
<title>My website's first HTML5 page</title>
</head>
<body>
<h1>Welcome!</h1>
<p>Sorry, but our website is under development.</p>
</body>
</html>

Proceed and upload the index.html file to your server’s document root directory, and then try to access your website domain. It will probably load your index.html and your server will now display the contents of index.html file instead of the “DirectoryIndex listing of files”.

WHEN IT DOES NOT WORK:

If you’ve just placed an index.html or index.php file on your server’s document root folder, for example: /public_html/ and you’re still not getting it to load these files upon a request to your domain, chances are your server is missing a specific configuration for the “DirectoryIndex Directive”.

If that fails to happen, you can use the DirectoryIndex directive in an .htaccess file to specify a custom file or files that the web server looks for when a visitor requests a directory. To enable the DirectoryIndex directive, use a text editor to create/modify the .htaccess file as follows. Replace filename with the file that you want to display whenever a user requests the server’s document root directory:

DirectoryIndex filename

You can also specify multiple filenames, and the web server will search for each file until it finds a match.

Open a text editor and copy the following example directive, then paste it on the new file:

DirectoryIndex index.php index.html index.htm

Save the file as .htaccess

No file extension, just name it as .htaccess placing a dot (.) in front of it to ensure it is a hidden file.

In this directive, when a visitor requests the directory name, the web server looks first for an index.php file. If it does not find an index.php file, it looks for an index.html file, and so on until it finds a match or runs out of files to search.

Now upload the .htaccess file to your server’s document root directory.

It is recommended to restart the server in order to changes to take effect, although you could just try to refresh the directory to see if it works.

If you’ve got full control over your server you might find it easy restart/reload it. However, if you rely on a shared hosting service, maybe you’ll not have enough permission to create an .htaccess file or to restart the server on your own, meaning that you would have to contact your hosting provider support team and request them to do that for you.

I hope it helps you. Good luck.

Добавить комментарий