2017-03-07 56 views
0
  1. PHP 7.1.2
  2. Roundcube 1.2.3 - 完成
  3. 的SQL Server 2016
  4. 的Windows Server 2016

下载了Microsoft PHP驱动程序(SQLSRV40 .EXE)from:与MSSQL服务器安装Roundcube 2016无法识别

https://docs.microsoft.com/en-us/sql/connect/php/step-1-configure-development-environment-for-php-development

我在尝试时运行Roundcube安装,无法继续下面的错误信息:

很抱歉,但你的web服务器不符合Roundcube的要求! 请根据上述检查结果安装缺失的模块或修复php.ini设置。 提示:只显示不正确的检查需要修复。

在整个页面上没有标记为“NOT OK”,但数据库似乎不被识别。请参阅从安装页面复制以下:

检查可用的数据库

检查其支持的扩展安装。至少需要其中一个。

的MySQL:不可用(见http://www.php.net/manual/en/ref.pdo-mysql.php

的PostgreSQL:不可用(见http://www.php.net/manual/en/ref.pdo-pgsql.php

的SQLite:不可用(见http://www.php.net/manual/en/ref.pdo-sqlite.php

SQLite的(V2):不可用(见http://www.php.net/manual/en/ref.pdo-sqlite.php

SQL Server(SQLSRV):NOT AVAILABLE(请参阅http://www.php.net/manual/en/ref.pdo-sqlsrv.php

SQL服务器(DBLIB):不可用(见http://www.php.net/manual/en/ref.pdo-dblib.php

甲骨文:不可用(见http://www.php.net/manual/en/book.oci8.php

我已经验证了微软的驱动程序在PHP扩展目录,并试图以包括以下扩展(一次一个)在php.ini:

延长= php_sqlsrv_7_nts_x64.dll

延长= php_pdo_sqlsrv_7_nts_x64.dll

我也试过其他各种SQL相关的扩展,并重新启动IIS和/或Windows没有成功。

回答

0

它似乎SQLSRV DLL文件必须匹配您的PHP的版本。我安装了PHP 7。1并试图使用微软的7.0驱动程序。

从GitHub.com/Microsoft/...中找到正确的驱动程序后,它将MS SQLSRV旁边的“OK”放置并启用“Next”按钮以继续安装RoundCube WebMail。

+0

Microsoft's SQL Server PHP 7.1驱动程序: https:// g ithub.com/Microsoft/msphpsql/releases/tag/4.1.5-Windows – thefid

0

的Ubuntu 16操作系统尝试运行

php -m 

如果在运行此命令后,未显示的mysqli然后安装的mysqli 对于PHP 7.0版本

sudo apt-get install php7.0-mysqli 

对于PHP版本5

sudo apt-get install php5-mysqli