我从Windows 8.1(64位)升级到Windows 10(64位)。我使用PHP运行IIS-10服务器,它使用ODBC连接到MS-Access数据库。我正在运行32位版本的Access 2016.我已经安装了Access / Jet数据库驱动程序。
使用32位ODBC数据源管理器我创建了一个名为" TFD_Local"的DSN。它连接到服务器上的.accdb数据库。
在IIS上运行的PHP脚本执行以下
$odbc = odbc_connect('TFD_Local', '', '') or reportError("Connect error: " . odbc_errormsg() . " " . odbc_error());
我得到了:
HTTP Error 500.0 - Internal Server Error
C:\Program Files (x86)\PHP\v5.4\php-cgi.exe - The FastCGI process exited unexpectedly
我怀疑这与32/64位不兼容有关,因为在运行相同软件的32位机器上运行正常。这曾经在我的Win 8.1 64位系统上运行。请注意像phpinfo这样的东西运行得很好。需要做些什么来防止产生500错误?
答案 0 :(得分:0)
回答我自己的问题:
我删除了通过管理工具/ ODBC数据源(32位)创建的DSN,然后运行C:\ Windows \ SysWOW64 \ odbcad32.exe并重新创建它。我不知道有什么区别,但这很有用。