# Production configuration
version: "3.1"
services:
# Php application - Основное приложение API Symfony
app:
container_name: ruintouch.app
restart: always
build:
context: .
dockerfile: ./docker/php/Dockerfile-prod
expose:
- 9000
# Nginx api server - Сервер для API буду тягать всякий контент (JSON)
nginx-api:
container_name: ruintouch.nginx-api
image: nginx:latest
restart: always
volumes:
- ./docker/nginx/prod/nginx.conf:/etc/nginx/nginx.conf
- ./docker/nginx/prod/sites-enabled/vhost-api.conf:/etc/nginx/sites-enabled/vhost-api.conf
ports:
- 8095:80
expose:
- 80
command: ["nginx", "-g", "daemon off;"]
# Nginx admin server - API для админки
nginx-admin:
container_name: ruintouch.nginx-admin
image: nginx:latest
restart: always
volumes:
- ./docker/nginx/prod/nginx.conf:/etc/nginx/nginx.conf
- ./docker/nginx/prod/sites-enabled/vhost-admin.conf:/etc/nginx/sites-enabled/vhost-admin.conf
ports:
- 8096:80
expose:
- 80
command: ["nginx", "-g", "daemon off;"]
#Nuxt publication - Nuxt SSR
nuxt-public:
container_name: ruintouch.nuxt-public
restart: always
build:
context: ./nuxt_public
dockerfile: Dockerfile-prod
ports:
- "3001:3000"
expose:
- "3000"
echo "ERROR!";
Но если ставить вопрос ребром и выбирать "или одно, или другое", то общее отключение вывода ошибок и
Отключать показ ошибок надо для всего РНР целиком.
И делается это очень просто. Добавляешь всего одну строчку в начало файла:
ini_set('display_errors', 0);
и всё - ни одна ошибка не появляется на экране! Причем это будут любые ошибки, а не одна конкретная.
Но тебе всё равно нужно знать, в чем проблема. Чтобы её исправить. Поэтому сам текст ошибки надо писать в лог на сервере. Это тоже делается одной командой:
ini_set('log_errors', 1);
Всего две команды, и больше ничего менять в коде не надо.
Они скроют текст ошибки от пользователя. но сохранят для того чтобы ты мог понять, в чем проблема.
Проблема известная.