В моей локальной среде (Хост Windows), когда я сталкиваюсь с ошибкой проверки, например, если обязательное поле не заполнено, сообщение об ошибке включает имя переменной, например «Поле имени пользователя является обязательным».

Однако, когда я развертываю то же приложение в своей серверной среде (хост Ubuntu с Docker ), сообщение об ошибке не включает имя переменной; вместо этого он просто говорит: «Это поле обязательно для заполнения».

Обе среды используют PHP 8.3, и я убедился, что версия CodeIgniter одинакова (3.x). Я проверил настройки отчетов об ошибках PHP, и они кажутся одинаковыми в разных средах.
мой файл композитора Docker
Код: Выделить всё
version: '3'
services:
db:
build:
context: .
dockerfile: docker/mysql/Dockerfile
restart: always
environment:
MARIADB_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}
MARIADB_DATABASE: ${MARIADB_DATABASE}
volumes:
- ./db_data:/usr/data
ports:
- "3309:3306"
web:
build:
context: .
dockerfile: docker/apache/Dockerfile
restart: unless-stopped
volumes:
- .:/var/www/html
- ./apache_log:/var/log/apache2
ports:
- 84:80
depends_on:
- db
links:
- db
adminer:
image: adminer
restart: unless-stopped
ports:
- 8084:8080
Код: Выделить всё
# use php 8.3 apache image
FROM php:8.3-apache
# Update it
RUN apt-get update
# install necessary libraries
RUN apt-get install -y \
git \
zip \
curl \
sudo \
unzip \
libicu-dev \
libbz2-dev \
libpng-dev \
libjpeg-dev \
libmcrypt-dev \
libreadline-dev \
libfreetype6-dev \
g++
# install docker extensions
RUN docker-php-ext-install \
bz2 \
intl \
bcmath \
opcache \
calendar \
pdo_mysql \
mysqli
# set up document root for apache
COPY docker/apache/000-default.conf /etc/apache2/sites-available/000-default.conf
# mod_rewrite for URL rewrite and mod_headers for .htaccess extra headers like Access-Control-Allow-Origin-
RUN a2enmod rewrite headers
# start with base php config, then add extensions
RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
# composer
RUN curl -sS https://getcomposer.org/installer | php
RUN mv composer.phar /usr/local/bin/composer
RUN chmod +x /usr/local/bin/composer
RUN composer self-update
COPY . /var/www/html/
RUN chown -R www-data:www-data /var/www/html && \
chmod -R 755 /var/www/html
EXPOSE 80
Подробнее здесь: https://stackoverflow.com/questions/784 ... onment-and