【问题标题】:Malformed MIME header error in Symfony 5.3Symfony 5.3 中格式错误的 MIME 标头错误
【发布时间】:2021-11-17 14:45:45
【问题描述】:

我正在使用 Symfony 5.3 和 PHP 8.0.12 开发一个项目。我一直在自己的电脑上开发它,它运行良好。我现在想将它部署在远程容器上。

但是,当我启动 Symfony 内置的 Web 服务器时,访问任何已定义的路由时都会出现以下错误:

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"
}
}

【问题讨论】:

    标签: php postgresql symfony webserver mime


    【解决方案1】:

    在 php-alpine 容器中使用 symfony server:start 和 docker 时出现此错误。每次我在新安装的实例中运行迁移或教义:架构:更新时,我的 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、驱动程序和所有依赖项。这在我的生产环境中并不顺利,因为图像超过 1GB,这意味着它有我在生产中不需要的二进制文件。根据经验,symfony 本地网络服务器需要 python 环境,但不确定。

    几天后,我偶然发现了这个 git 存储库:https://github.com/dunglas/symfony-docker。这是 Symfony 文档推荐的:Using Docker with Symfony。它使用 caddy 作为网络服务器。我从中吸取了教训,根据我的需要进行了调整,从那时起我就再也没有使用过 symfony 本地网络服务器。这是一个很好的项目,感谢Kévin Dunglas 和维护者。 php图像约为200MB。 Caddy 也是大约 40MB。非常适合生产环境和开发环境。

    请仔细阅读 repo 并采用你能做的或一切。

    免责声明:这不是您的问题/错误的答案,而是一个简单的替代方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-25
      • 2014-05-21
      • 2011-06-15
      • 1970-01-01
      • 2021-12-08
      • 1970-01-01
      相关资源
      最近更新 更多