Перейти к содержимому

Welcome to nginx on debian что это

  • автор:

Welcome to nginx on debian что это

Nginx это бесплатный и открытый (open-source) web-сервер, который предназначен для хостинга сайтов и приложений на его основе. Этот сервер популярен из-за своей низких требований к используемой памяти, высокой масштабируемости, с модульной архитектурой с безопасным функционалом и предсказуемой производительностью. Nginx это не просто web-сервер, он также работает как баланс нагрузки, кэш HTTP и промежуточный обратный прокси (reverse proxy, работающий вместе с сервером apache2).

В этом руководстве (перевод документации [1]) мы установим Nginx на сервер под операционной системой Debian 11, настроим права сетевого экрана (firewall) и научимся управлять некоторыми процессами Nginx.

[Предварительные требования]

Перед тем, как начать установку, вы должны получить доступ к серверу Debian под обычным пользователем без прав root, но с разрешенными привилегиями sudo . Также на сервере должен быть запущен firewall. Как это настраивается, вы можете посмотреть в руководстве по первоначальной настройке Debian 11 [2].

Примечание: я проводил настройку Nginx на VPS хостинга reg.ru [3]. После покупки хостинга вам будет доступен IP-адрес сервера, к которому можно подключиться по протоколу SSH, а также логин и пароль root.

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

[Шаг 1: установка Nginx]

Nginx доступен по умолчанию из репозиториев Debian, и поэтому устанавливается стандартными командами управления пакетами. Сначала нужно обновить локальный индекс пакетов на предмет получения последних, самых свежих изменений:

$ sudo apt update

После этого установите пакет nginx:

$ sudo apt install nginx

Подтвердите запрос на закачку пакетов для установки вводом Y+Enter. Менеджер пакетов apt установит Nginx и любые необходимые зависимости для него. После этого сервер сразу заработает, и будет доступен по IP-адресу вашего сервера (если открыт доступ к его портам, см. далее).

[Шаг 2: настройка сетевого экрана]

Если у вас установлен firewall, то перед его проверкой (см. далее врезку «Проверка работы сервера») необходимо разрешить доступ к серверу со стороны внешних подключений по публичному IP-адресу. Для этого необходимо настроить разрешения для открытых портов сервера. Предположим, что вы выполнили инструкции по предварительной настройке Debian 11 [2], тогда у вас уже установлен UFW firewall, сконфигурированный на ограничение доступа к вашему серверу.

Примечание: для своего сервера в качестве сетевого экрана я использовал iptables, поскольку он интегрируется с fail2ban [4].

Во время установки Nginx регистрирует себя для UFW, чтобы предоставить несколько профилей приложения (application profiles), которые можно использовать для разрешения или запрета доступа к Nginx через сетевой экран UFW.

Получить список профилей приложения можно командой:

$ sudo ufw app list

Должен быть выведен примерно такой список профилей:

Available applications:
.
Nginx Full
Nginx HTTP
Nginx HTTPs
OpenSSH
.

Из этого сообщения мы видим, что для Nginx доступно 3 профиля:

Nginx Full : этот профиль открывает порты 80 (обычный, незашифрованный web-трафик) и порт 443 (шифрованный трафик TLS/SSL).
Nginx HTTP : этот профиль откроет только порт 80 (обычный, незашифрованный web-трафик).
Nginx HTTPS : этот профиль откроет только порт 443 (шифрованный трафик TLS/SSL).

Рекомендуется разрешить наиболее ограничивающий профиль, пропускающий тот трафик, который вы сконфигурировали. Поскольку в этом руководстве мы не сконфигурировали еще TLS/SSL, то понадобится только лишь разрешить трафик HTTP на порту 80.

Вы можете разрешить это командой:

$ sudo ufw allow ‘Nginx HTTP’

Результат выполнения можно проверить следующей командой:

$ sudo ufw status
Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)

[Шаг 3: проверка вашего web-сервера]

# systemctl status nginx.service
● nginx.service — A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2023-10-28 09:08:10 MSK; 17s ago
Docs: man:nginx(8)
Process: 486 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 506 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 511 (nginx)
Tasks: 2 (limit: 1140)
Memory: 12.3M
CPU: 72ms
CGroup: /system.slice/nginx.service
├─511 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─512 nginx: worker process

Oct 28 09:08:10 5-63-155-210.cloudvps.regruhosting.ru systemd[1]: Starting A high performance web server and a reverse proxy server.
Oct 28 09:08:10 5-63-155-210.cloudvps.regruhosting.ru systemd[1]: Started A high performance web server and a reverse proxy server.
# ss -tl
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 4096 0.0.0.0:5355 0.0.0.0:*
LISTEN 0 511 0.0.0.0:http 0.0.0.0:*
LISTEN 0 4096 127.0.0.53%lo:domain 0.0.0.0:*
LISTEN 0 128 0.0.0.0:ssh 0.0.0.0:*
LISTEN 0 4096 [::]:5355 [::]:*
LISTEN 0 511 [::]:http [::]:*
LISTEN 0 128 [::]:ssh [::]:*

Если запустить в браузере ссылку http://aa.bb.cc.dd, где aa.bb.cc.dd это IP-адрес вашего сервера, то вы увидите базовую страничку по умолчанию, которая будет автоматически создана в файле /var/www/html/index.nginx-debian.html:

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.

Thank you for using nginx.

[Шаг 4: управление процессом Nginx]

Теперь, когда ваш web-сервер запущен и отвечает на запросы, можно рассмотреть некоторые базовые команды для его управления.

Чтобы остановить web-сервер:

$ sudo systemctl stop nginx

Чтобы запустить остановленный web-сервер:

$ sudo systemctl start nginx

Чтобы перезапустить службу web-сервера (это может потребоваться при значительных изменениях конфигурации):

$ sudo systemctl restart nginx

Если вы сделали изменения в конфигурации, можно перезагрузить Nginx без сбрасывания существующих соединений. Для этого выполните команду:

$ sudo systemctl reload nginx

По умолчанию Nginx сконфигурирован для автоматического запуска, когда сервер загружается. Если это не то, что вы хотите, то такое поведение можно запретить командой (тогда Nginx после перезапуска сервера надо будет запускать вручную командой systemctl start nginx):

$ sudo systemctl disable nginx

Чтобы снова разрешить автозапуск Nginx при загрузке сервера, выполните команду:

$ sudo systemctl enable nginx

[Шаг 5: настройка блоков сервера (не обязательно)]

При настройке web-серверов на основе Nginx можно использовать server blocks (это работает наподобие virtual hosts на Apache), чтобы инкапсулировать подробности конфигурации каждого домена (или субдомена), которые обслуживаются одним сервером. В следующем примере в качестве имени домена условно используется your_domain, но вместо этого вы должны заменить его на реальное имя вашего зарегистрированного домена.

По умолчанию Nginx на Debian 11 конфигурирует и разрешает один server block, настроенный на обслуживание документов в директории /var/www/html. Это нормально работает, если на сервере находится только 1 сайт, однако такая конфигурация не подходит, если нужно поддерживать несколько сайтов с разными доменными именами на одном IP-адресе. Вместо модификации /var/www/html создайте структуру директорий в папке /var/www для вашего web-сайта your_domain, оставляя /var/www/html в качестве директории по умолчанию, если запрос клиента не соответствует ни одному из других сконфигурированных на сервере сайтов.

Создайте директорию для your_domain следующим образом, используя флаг -p для создания необходимых дочерних директорий:

$ sudo mkdir -p /var/www/your_domain/html
$ sudo chown webuser /var/www/your_domain/html
$ sudo chgrp webuser /var/www/your_domain/html

Первая команда в этом примере создает каталог /var/www/your_domain/html, вторая назначает владельцем этой директории пользователя webuser, а третья команда меняет группу этой директории на группу webuser (здесь webuser это пользователь, от имени которого работает web-сервер):

Права доступа для вашей корневой web-директории должны быть корректными, если вы не модифицировали ваше значение umask. Однако в этом нужно убедиться командой:

# chmod -R 755 /var/www/your_domain
# ls -l /var/www
drwxr-xr-x 2 webuser webuser 4096 Oct 27 20:23 webuser

Далее создайте простую страничку index.html, используя текстовый редактор nano или mcedit:

Введите для этого файла текст:

   Welcome to your_domain< /title> < /head>  Success! Your Nginx server is successfully configured for your_domain< /em>. < /h1>
This is a sample page.< /p>
< /body>
< /html>

Сохраните этот файл и выйдите из редактора (nano для сохранения использует комбинацию клавиш Ctrl+X, для выхода Ctrl+O, с подтверждением клавишей Enter).

Чтобы Nginx мог обслуживать эту страничку, также нужно создать server block с правильными директивами, чтобы указать на корневую папку для домена your_domain. Вместо того, чтобы напрямую изменять файл конфигурации по умолчанию (файл /etc/nginx/sites-available/default), создайте новый файл конфигурации /etc/nginx/sites-available/your_domain:

# sudo nano /etc/nginx/sites-available/your_domain

Введите в файле следующее и сохраните его:

server  listen 80; listen [::]:80; root /var/www/your_domain/html; index index.html index.htm index.nginx-debian.html; server_name your_domain www.your_domain; location /  try_files $uri $uri/ =404; >
>

Обратите внимание, что вы обновляете root -конфигурацию для вашей новой созданной директории /var/www/your_domain/html, и имя домена в строке server_name необходимо заменить на корректное имя реального домена.

Далее разрешить этот server block путем создания символической ссылки на ваш пользовательский конфигурационный файл внутри директории sites-enabled, который Nginx прочитает во время своего запуска:

$ sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
$ sudo ls -l /etc/nginx/sites-enabled/
total 0
lrwxrwxrwx 1 root root 34 Oct 27 19:25 default -> /etc/nginx/sites-available/default
lrwxrwxrwx 1 root root 37 Oct 28 10:43 microsinru -> /etc/nginx/sites-available/available

Теперь на у вас есть два разрешенных server block-а, сконфигурированных для ответа на запросы, базируясь на директивах listen и server_name (более подробно про то, как Nginx обрабатывает эти директивы, см. [5]):

• your_domain: отвечает на запросы браузера к доменам your_domain и www.your_domain.
• default: будет отвечать на любые запросы к порт 80, которые не соответствуют ни одному из других блоков.

Чтобы избежать возможной проблемы с памятью хеширования (hash bucket memory), которая может возникнуть при добавлении дополнительных имен серверов в конфигурацию, необходимо настроить одно значение в файле/etc/nginx/nginx.conf. Для этого отройте его в редакторе:

$ sudo nano /etc/nginx/nginx.conf

Найдите строку server_names_hash_bucket_size , и удалите в её начале символ #, после чего сохраните файл и закройте редактор:

. http  . server_names_hash_bucket_size 64; . 
> .

Проверьте, что в конфигурации Nginx нет ошибок следующей командой:

$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

После того, как вы удостоверились в отсутствии ошибок в конфигурации, перезапустите Nginx, чтобы изменения вступили в силу:

$ sudo systemctl restart nginx

После этого Nginx должен теперь обслуживать ваше настроенное доменное имя. Вы можете проверить это путем ввода в строке браузера ссылки http://your_domain. После запуска просмотра этой странички будет отображаться HTML, который вы создали в файле /var/www/your_domain/html/index.html:

nginx index.nginx debian.html

[Шаг 6: знакомство с важными каталогами и файлами Nginx]

Содержимое сайта

/var/www/html : актуальный web-контент, который по умолчанию (сразу после установки Nginx) состоит только из странички по умолчанию Nginx, находящейся в директории /var/www/html. Это можно поменять путем редактирования файлов конфигурации Nginx (см. выше «Шаг 5: настройка блоков сервера»).

Конфигурация сервера

/etc/nginx : директория конфигурации Nginx. Здесь находятся все конфигурационные файлы.

/etc/nginx/nginx.conf : главный конфигурационный файл Nginx. Он может быть изменен для правки глобальной конфигурации Nginx, влияющей на все обслуживаемые сайты.

/etc/nginx/sites-available/ : директория, где находятся сервер-блоки для каждого обслуживаемого сайта. Nginx не будет использовать никакие конфигурационные файлы, найденные в этой директории, если для них не созданы символические ссылки, находящиеся в директории sites-enabled. Обычно здесь создаются все блоки конфигурации сервера, и затем они разрешаются путем создания символических ссылок.

/etc/nginx/sites-enabled/ : здесь сохраняются разрешенные блоки конфигурации для каждого сайта. Обычно это делается путем создания символических ссылок на файлы из директории sites-available.

/etc/nginx/snippets : в этой директории хранятся фрагменты конфигурации, которые подключаются где-нибудь в других местах конфигурации Nginx. Повторяемые сегменты конфигурации потенциально являются хорошими кандидатами для рефакторинга и повторного использования.

Логи сервера

/var/log/nginx/access.log : каждый запрос к вашему серверу записывается в этот файл лога, если Nginx специально не сконфигурирован как-то иначе.

/var/log/nginx/error.log : в этот лог будут записаны любые ошибки Nginx.

[Ссылки]

1. How To Install Nginx on Debian 11 site:digitalocean.com.
2. Initial Server Setup with Debian 11 site:digitalocean.com.
3. Облачный сервер для хостинга и разработки Base-1 site:reg.ru.
4. Защита от DDoS с помощью Fail2Ban.
5. Understanding Nginx Server and Location Block Selection Algorithms site:digitalocean.com.
6. Установка ftp-сервера ProFTPD на Debian 11.

Вместо сайта Welcome to NGinx,что делать?

Папки /var/www нету. Data-www не нашёл.
Откуда он берёт приветствие Welcome to NGinx?
И где директория где находится контент сайта?

  • Вопрос задан более трёх лет назад
  • 9152 просмотра

1 комментарий

Оценить 1 комментарий

Lynn

И где в этом конфиге фигурирует var/www?
Решения вопроса 1
Владимр Саков @Tostich Автор вопроса

1)Остановил NGinx
2)Создал файл /home/user/logs/nginx.access.log потому что NGinx очковал что его нет
3)Перезапустил NGinx
4)PROFIT! Теперь он читает мой index!

Эта инструкция решает мою проблему и проблему с незапуском NGinx по причине того что он не может найти PID файл!

То есть эта инструкция решает следующие проблемы:
NGinx не может найти PID файл
NGinx не находит нужный файл
NGinx не хочет запускаться

Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ответы на вопрос 1

Папки /var/www нету. Data-www не нашёл.

Так создайте каталог, если его нет.

www-data (а не Data-www) — имя группы.

И что он должен показать, если контент не создали? Страницу из пакета и показывает.

Ответ написан более трёх лет назад
Владимр Саков @Tostich Автор вопроса
Не помогло. Всё равно welcome to nginx.

Tostich: Посмотрел содержимое пакета. У Вас что-то сломано в системе, если не было каталога /var/www. Он должен был создаться при установке пакета.

И что «не помогло»? Если пишете о проблеме, описывайте, что делали.

Владимр Саков @Tostich Автор вопроса

AVKor: Создал каталог /var/www и загрузил в него index.html
Не отображается содержание index.html,вместо этого Welcome to nginx.

Выполнил команду apt-get install nginx и всё.

Установка Nginx на Debian 8

Nginx – это популярный HTTP-сервер, альтернатива Apache2. Его можно использовать в качестве обратного прокси, почтового сервера или веб-сервера. На момент написания статьи Nginx поддерживает 14% рынка.

В этом руководстве показано, как установить Nginx на сервер Debian 8.

Требования

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

  • Свежий сервер Debian 8.1;
  • Не-рутовый пользователь с правами sudo (подробнее – здесь).

Если не указано иное, все команды в этом руководстве нужно пускать с правами sudo.

1: Установка Nginx

Для установки используйте встроенный менеджер пакетов apt-get. Он позволяет упростить процессы установки и управления пакетами.

Примечание: Менеджер apt-get и утилита sudo должны быть уже установлены (см. раздел Требования). В отличие от других дистрибутивов Linux, Debian 8 не поставляется с предустановленной sudo.

Сервер Nginx сосредоточен на обработке больших нагрузок при низком потреблении памяти. Чтобы установить его, выполните следующую команду:

sudo apt-get install nginx

2: Тестирование Nginx

После установки веб-сервера нужно протестировать его работу.

При помощи браузера откройте следующую ссылку, указав свой ip:

На экране появится стандартная страница Nginx:

Welcome to nginx on Debian!
If you see this page, the nginx web server is successfully installed and working on Debian. Further configuration is required. […]

Если доступа к этой странице нет, значит, установка выполнена некорректно.

Если вас нет браузера, можно протестировать nginx при помощи командной строки. Рекомендуется проверить его с другой системы, чтобы убедиться, что сайт находится в общем доступе. Выполните команду:

На экране должен появиться такой вывод:



Welcome to nginx on Debian!


Welcome to nginx on Debian!

If you see this page, the nginx web server is successfully installed and
working on Debian. Further configuration is required.

For online documentation and support please refer to
nginx.org

Please use the reportbug tool to report bugs in the
nginx package with Debian. However, check href=»http://bugs.debian.org/cgi-bin/pkgreport.cgi?ordering=normal;archive=0;src=nginx;repeatmerged=0″>existing
bug reports before reporting a new bug.

Thank you for using debian and nginx.


Если веб-сервер установлен некорректно, на экране может появиться ошибка:

curl: (52) Empty reply from server

3: Управление процессами Nginx

Рассмотрим базовые команды Nginx.

Чтобы остановить сервер, введите:

sudo service nginx stop

Для запуска веб-сервера используйте:

sudo service nginx start

Чтобы перезапустить сервер, введите:

sudo service nginx restart

Чтобы настроить автоматический запуск веб-сервера при загрузке системы, используйте:

sudo update-rc.d nginx defaults

Чтобы проверить работу конфигурации, перезагрузите сервер.

sudo shutdown -r now

Затем нужно выйти, потому что сервер перезагружается.

Через пару минут можно повторить раздел 2, чтобы убедиться, что сервер загружается автоматически.

Настройки Nginx

Чтобы иметь возможность обслуживать собственные сайты или приложения при помощи Nginx, нужно ознакомиться с расположением конфигурационных файлов и root-каталога Nginx.

Стандартный root-каталог Nginx – /var/www/html. Файлы, хранящиеся в этом каталоге, будут обслуживаться веб-сервером. Эта локация указана в стандартном конфигурационном файле блока server, который находится в /etc/nginx/sites-enabled/default.

Блоки server

Примечание: Блоками server называются виртуальные хосты nginx.

Чтобы добавить новый блок server, нужно создать для него конфигурационный файл в /etc/nginx/sites-available. Чтобы включить блок, нужно создать символьную ссылку на каталог /etc/nginx/sites-enabled при помощи команды:

sudo ln -s /etc/nginx/sites-available/site /etc/nginx/sites-enabled/site

Все конфигурационные файлы в sites-enabled будут загружаться веб-сервером nginx.

Глобальные настройки nginx

Главный конфигурационный файл nginx находится в /etc/nginx/nginx.conf. В нём можно менять настройки (как пользователь, который запускает демон Nginx) и регулировать количество рабочих процессов, порождаемых Nginx.

Заключение

Веб-сервер Nginx успешно установлен и готов к обслуживанию контента.

Рекомендуется ознакомиться с дополнительными параметрами для поддержки сервера. Помните, что в настоящее время Nginx крайне уязвим, поскольку полностью доступен в сети. Полезную информацию о настройке и защите Nginx можно найти в этом разделе.

Неистребимая nginx welcome page

Столкнулся со странной проблемой. Беру такой вот конфиг
https://www.collaboraoffice.com/code/nginx-reverse-proxy/
меняю порт на нестандартный, например 442 (или там 81, убирая ssl) и вижу только welcome page. Возвращаю порт на стандартный, но это проклятая страница, которой нет ни в одном конфиге начинает меня преследовать.
Че это вообще такое, из какого конфига она выползает ?
Я даже пробовал оставить конфиг коллаборы на сервере единственным, но и это не решает проблемы.

Deleted
22.07.19 19:17:11 MSK
1 2 →

я ничего не понял, но welcome page сама по себе не появляется

В rpm и deb она включена через файл вроде /etc/nginx/conf.d/default.conf

router ★★★★★
( 22.07.19 19:23:13 MSK )

mandala ★★★★★
( 22.07.19 19:23:30 MSK )
Ответ на: комментарий от router 22.07.19 19:23:13 MSK

этого файла нет.

Deleted
( 22.07.19 19:23:31 MSK )
Ответ на: комментарий от mandala 22.07.19 19:23:30 MSK

да, никаких отсылок к welcome page.

Deleted
( 22.07.19 19:24:05 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:24:05 MSK

Что там? Показывай тогда.

mandala ★★★★★
( 22.07.19 19:24:50 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:23:31 MSK

могу лишь повторить — страница сама по себе не возникает

проверяй конфиги nginx ( начиная с nginx.conf и по всем include )

проверяй, что ты попадаешь именно на nginx и он единственный ( а не одна из нод кластера )

router ★★★★★
( 22.07.19 19:25:08 MSK )
Ответ на: комментарий от mandala 22.07.19 19:24:50 MSK

user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events < worker_connections 10240; # multi_accept on; >http < ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; >

Deleted
( 22.07.19 19:25:58 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:25:58 MSK

router ★★★★★
( 22.07.19 19:26:29 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:25:58 MSK

И в этих каталогах не?

 include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; 

mandala ★★★★★
( 22.07.19 19:27:09 MSK )
Ответ на: комментарий от router 22.07.19 19:26:29 MSK

Удобно же! Я сам себе делаю, где нету.

mandala ★★★★★
( 22.07.19 19:27:46 MSK )
Ответ на: комментарий от router 22.07.19 19:25:08 MSK

Дерзко конечно с моей стороны предложить запустить у себя такой конфиг, но я попробую:

server < listen 442; server_name collabora.linux.org.ru; # ssl_certificate /path/to/ssl_certificate; # ssl_certificate_key /path/to/ssl_certificate_key; # static files location ^~ /loleaflet < proxy_pass http://localhost:9980; proxy_set_header Host $http_host; ># WOPI discovery URL location ^~ /hosting/discovery < proxy_pass http://localhost:9980; proxy_set_header Host $http_host; ># main websocket location ~ ^/lool/(.*)/ws$ < proxy_pass http://localhost:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; ># download, presentation and image upload location ~ ^/lool < proxy_pass http://localhost:9980; proxy_set_header Host $http_host; ># Admin Console websocket location ^~ /lool/adminws < proxy_pass http://localhost:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; >>

Deleted
( 22.07.19 19:29:15 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:29:15 MSK

зачем мне твой конфиг? у тебя include /etc/nginx/sites-enabled/*;

router ★★★★★
( 22.07.19 19:30:14 MSK )
Ответ на: комментарий от mandala 22.07.19 19:27:09 MSK

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

Deleted
( 22.07.19 19:30:15 MSK )
Ответ на: комментарий от router 22.07.19 19:26:29 MSK

В /etc/nginx/sites-enabled/* обычно кладется только симлинк, а держат сам конфиг обычно в /etc/nginx/sites-available . Но это не закон, убирая и задавая свои include в nginx.conf можешь делать что хочешь.

mandala ★★★★★
( 22.07.19 19:30:46 MSK )
Ответ на: комментарий от router 22.07.19 19:30:14 MSK

root@cloud:~# ls -la /etc/nginx/sites-enabled/ итого 12 drwxr-xr-x 2 root root 4096 июл 22 19:31 . drwxr-xr-x 9 root root 4096 июл 22 18:54 .. -rw-r--r-- 1 root root 1185 июл 22 18:54 collabora

Deleted
( 22.07.19 19:31:51 MSK )
Ответ на: комментарий от mandala 22.07.19 19:27:46 MSK

да я знаю, как он работает. просто не нравится

router ★★★★★
( 22.07.19 19:31:54 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:31:51 MSK

root@cloud:~# ls -la /etc/nginx/conf.d/ итого 8 drwxr-xr-x 2 root root 4096 ноя 7 2018 . drwxr-xr-x 9 root root 4096 июл 22 18:54 ..

Deleted
( 22.07.19 19:32:48 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:32:48 MSK

Что в логе тогда, когда открывает «волшебный» дефолт? /var/log/nginx/access.log

mandala ★★★★★
( 22.07.19 19:34:30 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:31:51 MSK

systemctl nginx reload

systemctl nginx restart

router ★★★★★
( 22.07.19 19:35:28 MSK )
Ответ на: комментарий от router 22.07.19 19:35:28 MSK

да я даже сервер целиком перезапускал.
и это тоже пробовал.

Deleted
( 22.07.19 19:36:48 MSK )

Показывай nginx -T.

ya-betmen ★★★★★
( 22.07.19 19:37:16 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:36:48 MSK

А ты точно попадаешь туда, на тот хост, куда хочешь? Магии же не бывает.

mandala ★★★★★
( 22.07.19 19:38:37 MSK )
Ответ на: комментарий от mandala 22.07.19 19:34:30 MSK

обычный 200 и 404 на favicon

Deleted
( 22.07.19 19:39:46 MSK )
Ответ на: комментарий от mandala 22.07.19 19:38:37 MSK

100500% туда, я даже курлом с этого же сервера и проверяю.

Deleted
( 22.07.19 19:40:18 MSK )

А кто живёт на 9980? он не может отдавать приветствие?

router ★★★★★
( 22.07.19 19:41:10 MSK )
Ответ на: комментарий от ya-betmen 22.07.19 19:37:16 MSK

не знал. спасибо

router ★★★★★
( 22.07.19 19:41:30 MSK )
Ответ на: комментарий от ya-betmen 22.07.19 19:37:16 MSK

root@cloud:~# nginx -T nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful # configuration file /etc/nginx/nginx.conf: user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events < worker_connections 10240; # multi_accept on; >http < ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; gzip_disable "msie6"; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; >#mail < # # See sample authentication script at: # # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript # # # auth_http localhost/auth.php; # # pop3_capabilities "TOP" "USER"; # # imap_capabilities "IMAP4rev1" "UIDPLUS"; # # server < # listen localhost:110; # protocol pop3; # proxy on; # ># # server < # listen localhost:143; # protocol imap; # proxy on; # >#> # configuration file /etc/nginx/modules-enabled/50-mod-http-echo.conf: load_module modules/ngx_http_echo_module.so; # configuration file /etc/nginx/mime.types: types < text/html html htm shtml; text/css css; text/xml xml; image/gif gif; image/jpeg jpeg jpg; application/javascript js; application/atom+xml atom; application/rss+xml rss; text/mathml mml; text/plain txt; text/vnd.sun.j2me.app-descriptor jad; text/vnd.wap.wml wml; text/x-component htc; image/png png; image/tiff tif tiff; image/vnd.wap.wbmp wbmp; image/x-icon ico; image/x-jng jng; image/x-ms-bmp bmp; image/svg+xml svg svgz; image/webp webp; application/font-woff woff; application/java-archive jar war ear; application/json json; application/mac-binhex40 hqx; application/msword doc; application/pdf pdf; application/postscript ps eps ai; application/rtf rtf; application/vnd.apple.mpegurl m3u8; application/vnd.ms-excel xls; application/vnd.ms-fontobject eot; application/vnd.ms-powerpoint ppt; application/vnd.wap.wmlc wmlc; application/vnd.google-earth.kml+xml kml; application/vnd.google-earth.kmz kmz; application/x-7z-compressed 7z; application/x-cocoa cco; application/x-java-archive-diff jardiff; application/x-java-jnlp-file jnlp; application/x-makeself run; application/x-perl pl pm; application/x-pilot prc pdb; application/x-rar-compressed rar; application/x-redhat-package-manager rpm; application/x-sea sea; application/x-shockwave-flash swf; application/x-stuffit sit; application/x-tcl tcl tk; application/x-x509-ca-cert der pem crt; application/x-xpinstall xpi; application/xhtml+xml xhtml; application/xspf+xml xspf; application/zip zip; application/octet-stream bin exe dll; application/octet-stream deb; application/octet-stream dmg; application/octet-stream iso img; application/octet-stream msi msp msm; application/vnd.openxmlformats-officedocument.wordprocessingml.document docx; application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx; application/vnd.openxmlformats-officedocument.presentationml.presentation pptx; audio/midi mid midi kar; audio/mpeg mp3; audio/ogg ogg; audio/x-m4a m4a; audio/x-realaudio ra; video/3gpp 3gpp 3gp; video/mp2t ts; video/mp4 mp4; video/mpeg mpeg mpg; video/quicktime mov; video/webm webm; video/x-flv flv; video/x-m4v m4v; video/x-mng mng; video/x-ms-asf asx asf; video/x-ms-wmv wmv; video/x-msvideo avi; ># configuration file /etc/nginx/sites-enabled/collabora: server < listen 80; server_name collabora.linux.org.ru; # ssl_certificate /path/to/ssl_certificate; # ssl_certificate_key /path/to/ssl_certificate_key; # static files location ^~ /loleaflet < proxy_pass http://localhost:9980; proxy_set_header Host $http_host; ># WOPI discovery URL location ^~ /hosting/discovery < proxy_pass http://localhost:9980; proxy_set_header Host $http_host; ># main websocket location ~ ^/lool/(.*)/ws$ < proxy_pass http://localhost:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; ># download, presentation and image upload location ~ ^/lool < proxy_pass http://localhost:9980; proxy_set_header Host $http_host; ># Admin Console websocket location ^~ /lool/adminws < proxy_pass http://localhost:9980; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $http_host; proxy_read_timeout 36000s; >>

Deleted
( 22.07.19 19:42:26 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:42:26 MSK

останови nginx и ещё раз проверь curl’ом

router ★★★★★
( 22.07.19 19:44:30 MSK )
Ответ на: комментарий от mandala 22.07.19 19:34:30 MSK

Вот, если курлом ходить что в логах остаётся.

root@cloud:~# curl http://collabora.linux.org.ru:80   Welcome to nginx! body 

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.

Thank you for using nginx.

root@cloud:~# cat /var/log/nginx/error.log root@cloud:~# cat /var/log/nginx/access.log 127.0.0.1 - - [22/Jul/2019:19:43:27 +0300] "GET / HTTP/1.1" 200 612 "-" "curl/7.64.0"

Deleted
( 22.07.19 19:44:53 MSK )
Последнее исправление: Deleted 22.07.19 19:48:53 MSK (всего исправлений: 1)

Ответ на: комментарий от router 22.07.19 19:44:30 MSK

Да проверял уже.

root@cloud:~# systemctl stop nginx.service root@cloud:~# curl http://collabora.internal.qbix.ru:80 curl: (7) Failed to connect to collabora.internal.qbix.ru port 80: В соединении отказано root@cloud:~# systemctl start nginx.service root@cloud:~# curl http://collabora.internal.qbix.ru:80   Welcome to nginx! body 

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.

Thank you for using nginx.

Deleted
( 22.07.19 19:46:16 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:46:16 MSK

теоретически, в unit’е systemd могут передваться другие параметры процессу

смотри systemctl status nginx, там будет путь к unit’у

router ★★★★★
( 22.07.19 19:47:41 MSK )
Ответ на: комментарий от router 22.07.19 19:47:41 MSK

root@cloud:~# systemctl stop nginx.service root@cloud:~# curl http://127.0.0.1 curl: (7) Failed to connect to 127.0.0.1 port 80: В соединении отказано root@cloud:~# systemctl start nginx.service root@cloud:~# curl http://127.0.0.1   Welcome to nginx! body 

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.

Thank you for using nginx.

Deleted
( 22.07.19 19:48:23 MSK )
Ответ на: комментарий от router 22.07.19 19:47:41 MSK

● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2019-07-22 19:47:36 MSK; 1min 57s ago Docs: man:nginx(8) Process: 2321 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 2322 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 2323 (nginx) Tasks: 4 (limit: 4697) Memory: 15.1M CGroup: /system.slice/nginx.service ├─2323 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ├─2324 nginx: worker process ├─2325 nginx: worker process └─2326 nginx: worker process

Deleted
( 22.07.19 19:50:49 MSK )
Ответ на: комментарий от router 22.07.19 19:47:41 MSK

В юните вроде ничего интересного

[Unit] Description=A high performance web server and a reverse proxy server Documentation=man:nginx(8) After=network.target nss-lookup.target [Service] Type=forking PIDFile=/run/nginx.pid ExecStartPre=/usr/sbin/nginx -t -q -g 'daemon on; master_process on;' ExecStart=/usr/sbin/nginx -g 'daemon on; master_process on;' ExecReload=/usr/sbin/nginx -g 'daemon on; master_process on;' -s reload ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid TimeoutStopSec=5 KillMode=mixed [Install] WantedBy=multi-user.target

Deleted
( 22.07.19 19:51:39 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:51:39 MSK

Повеселило в шапке юнита
# Stop dance for nginx

Deleted
( 22.07.19 19:52:36 MSK )
Ответ на: комментарий от Deleted 22.07.19 19:42:26 MSK

Ты с сайта нжиникса пакеты ставил что ли? Покажи nginx -V, вангую у тебя дефолтный рут хз куда смотрит.

ya-betmen ★★★★★
( 22.07.19 19:55:53 MSK )
Ответ на: комментарий от ya-betmen 22.07.19 19:55:53 MSK

Всё из стандартных реп. Я ж говорю, что пробовал и на убунте и на другом дебиане. Воспроизводимость результата 100%.

Deleted
( 22.07.19 19:57:12 MSK )
Ответ на: комментарий от ya-betmen 22.07.19 19:55:53 MSK

nginx version: nginx/1.14.2 built with OpenSSL 1.1.1a 20 Nov 2018 (running with OpenSSL 1.1.1c 28 May 2019) TLS SNI support enabled configure arguments: --with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-sWHVb6/nginx-1.14.2=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_gzip_static_module --without-http_browser_module --without-http_geo_module --without-http_limit_req_module --without-http_limit_conn_module --without-http_memcached_module --without-http_referer_module --without-http_split_clients_module --without-http_userid_module --add-dynamic-module=/build/nginx-sWHVb6/nginx-1.14.2/debian/modules/http-echo

Deleted
( 22.07.19 19:57:37 MSK )
Последнее исправление: Deleted 22.07.19 19:57:55 MSK (всего исправлений: 1)

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *