Я работаю над проектом с Symfony 5.3 с PHP 8.0.12. Я разрабатывал его на своем собственном компьютере, он работает хорошо. Теперь я хочу развернуть его на удаленном контейнере.
Однако, когда я запускаю Symfony, встроенный в веб-сервер, я получаю следующую ошибку при доступе к любому из определенных маршрутов:
issue with server callback error="unable to fetch the response from the backend: malformed MIME header: missing colon: "FROM information_schema.schemata""
В обоих случаях (на моем компьютере и в контейнере) сервер подключается к удаленной базе данных PostgreSQL. У контейнера, похоже, нет проблем с подключением к базе данных, поскольку я могу подключиться вручную с помощью команды psql.
Я пытался переустановить Symfony (версия Symfony CLI v4.26.8), Composer (версия 2.1.12) и большинство библиотек PHP, но это ничего не изменило.
Я понятия не имею, в чем проблема. Любая помощь будет принята с благодарностью.
Вот мой composer.json:
{
"type": "project",
"license": "proprietary",
"minimum-stability": "stable",
"prefer-stable": true,
"require": {
"php": ">=7.2.5",
"ext-ctype": "*",
"ext-iconv": "*",
"ext-json": "*",
"composer/package-versions-deprecated": "1.11.99.2",
"doctrine/annotations": "^1.13",
"doctrine/doctrine-bundle": "^2.4",
"doctrine/doctrine-migrations-bundle": "^3.1",
"doctrine/orm": "^2.9",
"lexik/jwt-authentication-bundle": "^2.13",
"sensio/framework-extra-bundle": "^6.2",
"symfony/apache-pack": "^1.0",
"symfony/dotenv": "5.3.*",
"symfony/flex": "^1.15",
"symfony/framework-bundle": "5.3.*",
"symfony/http-foundation": "5.3.*",
"symfony/ldap": "5.3.*",
"symfony/proxy-manager-bridge": "5.3.*",
"symfony/security-bundle": "5.3.*",
"symfony/stopwatch": "5.3.*",
"symfony/web-profiler-bundle": "5.3.*",
"symfony/property-access": "5.3.*",
"symfony/runtime": "5.3.*",
"symfony/security-csrf": "5.3.*",
"symfony/serializer": "5.3.*",
"symfony/yaml": "5.3.*"
},
"config": {
"optimize-autoloader": true,
"preferred-install": {
"*": "dist"
},
"sort-packages": true
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"App\\Tests\\": "tests/"
}
},
"replace": {
"symfony/polyfill-ctype": "*",
"symfony/polyfill-iconv": "*",
"symfony/polyfill-php72": "*"
},
"scripts": {
"auto-scripts": {
"cache:clear": "symfony-cmd",
"assets:install %PUBLIC_DIR%": "symfony-cmd"
},
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
]
},
"conflict": {
"symfony/symfony": "*"
},
"extra": {
"symfony": {
"allow-contrib": false,
"require": "5.3.*"
}
},
"require-dev": {
"symfony/maker-bundle": "^1.33"
}
}
Решение проблемы
У меня была эта ошибка при использовании symfony server:start
с докером внутри контейнера php-alpine. Каждый раз, когда я запускаю миграции или доктрину: схему: обновление в свежеустановленном экземпляре, мой локальный веб-сервер symfony выдает ошибку: issue with server callback error="unable to fetch the response from the backend: malformed MIME header: missing colon: "FROM information_schema.schemata
я решил ее, удалив контейнер alpine и собрав все из FROM ubuntu:20.04
образа: мне пришлось установить php, драйверы и все зависимости тоже. Это не устраивало мою производственную среду, потому что размер образа превышал 1 ГБ, а это означало, что в нем были двоичные файлы, которые мне не нужны в производственной среде. По опыту, локальному веб-серверу symfony нужна среда python, но я не уверен в этом.
Через несколько дней я наткнулся на этот репозиторий git: https://github.com/dunglas/symfony-docker. который рекомендуется из документации Symfony здесь: Использование Docker с Symfony. Он использует Caddy в качестве веб-сервера. Я многому научился, настроил его под свои нужды и с тех пор никогда не использовал локальный веб-сервер Symfony. Это хороший проект, спасибо Кевину Дангласу и сопровождающим. Изображение php составляет около 200 МБ. Caddy тоже весит около 40 МБ. Отлично подходит как для рабочей среды, так и для среды разработки.
Пожалуйста, ознакомьтесь с репозиторием и примите то, что можете, или все.
Отказ от ответственности: это не ответ на вашу проблему/ошибку, а простая альтернатива.
Комментариев нет:
Отправить комментарий