Web-сервера
Задание:
Познакомьтесь с материалами блока 1.8 Web-сервера
Пройдите тест
Тест
Расставьте директивы в порядке приоритета (в порядке проверок)
location = /uploads/favicon.ico
location /
location /uploads/
location ~ \.(ico|jpeg|jpg|png|css|js)$
location ^~ /uploads/
Допустим имеется следующая конфигурация 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
Допустим, у 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 ?