致命错误:第68行/var/www/laravel/config/database.php中未定义的类常量“MYSQL_ATTR_SSL_CA”

时间:2017-02-28 14:29:28

标签: php mysql laravel

使用laravel设置docker容器后,我在浏览器中收到以下错误:

Fatal error: Undefined class constant 'MYSQL_ATTR_SSL_CA' in /var/www/laravel/config/database.php on line 68

此行的内容:

        PDO::MYSQL_ATTR_SSL_CA => env('DB_MYSQL_ATTR_SSL_CA', ''),

这是来自PHP5的Debian官方图片,包括php5-mysql(基于Debian页面https://packages.debian.org/jessie/php5-mysql包含php commons 5.6.30,如果我是正确的话应该就够了)完整的Dockerfile可以在这里找到https://github.com/lechmigdal/laravel-mysql-docker/blob/master/Dockerfile

是否还需要包含其他任何软件包或需要其他配置?

1 个答案:

答案 0 :(得分:1)

步骤1: php.ini 文件中启用pdo_mysql扩展

在PHP 7.2.10中:

  1. 打开php-folder / php.ini 文件
  2. 搜索 extension = pdo_mysql
  3. 删除行前的分号(;)(取消注释该行)
  4. 或粘贴 extension = pdo_mysql (如果不存在)

在某些较低版本的php中,该行可能显示为

    Windows上的
  • extension = php_pdo_mysql.dll

  • 在Linux / Mac上
  • extension = php_pdo_mysql.so

步骤2: 服务您的应用

如果运行您的应用程序时显示错误消息“未指定应用程序加密密钥。”,然后执行步骤3,然后再次提供服务。

步骤3 :(可选) 使用工匠为您的应用生成APP密钥

TypeError: ap_loguniform_sampler() got multiple values for argument 'size'

那应该可以解决您的问题。