最近我通过命令创建了Symfony3项目
symfony new myproject
该项目使用mysql,运行良好。
之后,我创建了一个演示项目来研究symfony的最佳实践:
symfony demo
项目已成功创建。Config.php显示一切正常。app_dev.php已在我的web浏览器中成功打开。但当我试图打开"http://localhost/app_dev.php/ru/blog/"(应用程序有一个公共部分(将出现500内部服务器错误。/app_dev.php/ru/blog/shows:
错误消息:
驱动程序中发生异常:找不到驱动程序
500内部服务器错误-DriverException
2个链接异常:
PDOException»
PDOException»
调用堆栈中的关键部分:
CRITICAL-未捕获的PHP异常Doctrine\DBAL\Exception\DriverException:"驱动程序中发生异常:找不到驱动程序",位于/var/www/symfony_demo/vvendor/dotrine/DBAL/lib/Doctrine/DBAL/driver/AbstractSQLiteDriver.PHP第85行
我已经阅读了所有关于PDO异常的堆栈交换问题,但没有一个能帮助我…
我使用Ubuntu,Nginx。
安装了Mysql、sqlite、php5-sqlite、sqlite3、libsqlite3-dev。Nginx和php5-fpm重新启动。php.ini用于PDO Wez Furlong的SQLite 3.x驱动程序。
演示应用程序参数。yml:
database_driver: pdo_sqlite
database_host: 127.0.0.1
database_port: null
database_name: null
database_user: root
database_password: null
database_path: '%kernel.root_dir%/data/blog.sqlite'
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_user: null
mailer_password: null
locale: en
secret: secret_value_for_symfony_demo_application
php.ini文件:
[sqlite]
; http://php.net/sqlite.assoc-case
;sqlite.assoc_case = 0
[sqlite3]
;sqlite3.extension_dir =
我不知道问题的原因是什么以及如何解决。
救命!
只需安装:
sudo apt install php-sqlite3
对于我在ubuntu中工作
sudo apt-get install php5.6-sqlite
在我的系统上,这是有效的。但可能不适合所有人:
- 今年早些时候,我在PostGRESQL中使用了Symfony
- 今天,我使用composer和symfony.com上的说明,完成了我认为是一个干净的symfony项目安装
- 我得到了你描述的错误\
- 我什么都看了。最后,由于某种原因,我的.env被设置为使用postGreSQL。评论了/.env文件中的那一行,并将其设置为SQLite:
###> doctrine/doctrine-bundle ###
# Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
#
DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
# DATABASE_URL="mysql://db_user:db_password@127.0.0.1:3306/db_name?serverVersion=5.7"
# DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name?serverVersion=13&charset=utf8"
###< doctrine/doctrine-bundle ###