Web-сервера

Задание:

  1. Познакомьтесь с материалами блока 1.8 Web-сервера

  2. Пройдите тест


Тест

  1. Расставьте директивы в порядке приоритета (в порядке проверок)

    • location = /uploads/favicon.ico

    • location /

    • location /uploads/

    • location ~ \.(ico|jpeg|jpg|png|css|js)$

    • location ^~ /uploads/

  2. Допустим имеется следующая конфигурация nginx

server {

    listen 80;

    server_name static.demo.org;

    location ~ \.\w\w\w$ {

        root /home/box/web/public;

    }

}

server {

    listen 80 default_server;

    server_name _;

    root /var/www/;

    location ~ \.html$ {

        proxy_pass http://127.0.0.1:8080/;

    }

}


Какой файл будет отдаваться при следующем запросе ?

GET http://static.demo.org/index.html  HTTP/1.0

Выберите один вариант из списка


    • /var/www/index.html

    • Никакой, т.к. HTTP запрос не корректен - нет заголовка Host. Сервер вернет ошибку 400.

    • /home/box/web/public/index.html

    • Никакой, т.к. нет подходящего location. Сервер вернет ошибку 404

  1. Допустим, у nginx запущены следующие процессы:


$ ps -o pid,ruser,cmd -C nginx

  PID RUSER    CMD

 1718 root     nginx: master process /usr/sbin/nginx

 1719 www-data nginx: worker process

 1720 www-data nginx: worker process

 

Nginx пытается отдать файл /home/box/web/1.html

Причем права доступа выглядят следующим образом:


$ ls -lad /home/  /home/box/ /home/box/web/  /home/box/web/1.html

drwxr-xr-x  4 root root 4096 Apr 11  2014 /home/

drwx------ 96 box  box 12288 Oct 4 01:57 /home/box/

drwxr-xr-x 96 box  box 8192 Oct 4 01:57 /home/box/web/

-rwxr--r-- 96 box  box 1024 Oct 4 02:00 /home/box/web/1.html

 

Какой HTTP код ответа вернет Nginx ?