Логи Nginx в Docker
Логи Nginx - это строки
о запросах к сайту,
их пишет веб-сервер,
а не PHP.
После открытия страницы
в браузере в журнале
службы web
появляется обращение
к корню или к index.php.
Сценарий на диске
печатает hello:
<?php
echo 'hello';
Nginx принимает порт
8080:80
и передаёт PHP через FPM.
Файл default.conf:
server {
listen 80;
root /var/www/html;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass app:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Файл compose.yaml:
services:
web:
image: nginx
ports:
- "8080:80"
volumes:
- ./site:/var/www/html
- ./default.conf:/etc/nginx/conf.d/default.conf
app:
image: php:8.5-fpm
volumes:
- ./site:/var/www/html
Поднимем проект в фоне
и откроем localhost:8080
в браузере, чтобы nginx
зафиксировал запрос.
Запуск проекта:
docker compose up -d
Затем прочитаем журнал веб-сервера. Там есть обращение к странице сайта - строка с методом и путём запроса:
docker compose logs web
Поднимите связку gate и php с кодом на диске, откройте главную страницу на порту 8080.
Найдите в журнале gate строку о запросе к открытой странице.