note 59347 deleted from function.mssql-connect by danbrown
| From: | danbrown@php.net | Date: | Sun, 07 Dec 2008 19:38:31 +0000 |
| Subject: | note 59347 deleted from function.mssql-connect by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-147870@lists.php.net to get a copy of this message | ||
Note Submitter: shrockc at inhs dot org
----
PHP 4.4.1 - IIS/6.0 - Windows 2K3 SP1 - MSSQL 2K connection problem
mssql_connect() refused to connect on 1 machine (IIS/6.0 on Windows Server 2003SP1), but connected
okay on 2 other machines (IIS/6.0 both on Windows 2003). One of those 2 machines had MS SQL Server
2000SP3 installed, the other did not -- neither had problems connecting to another, different
Windows 2003 server running SQL2000 SP3.
I fixed the problem on the broken Windows 2003SP1 server by replacing the bundled ntwdblib.dll in my
php installation directory with the version of the .dll that I found in c:\windows\system32 on a
system with MS SQL 2000 installed. I did not copy the .dll to c:\windows\system32 on the Web
Server, just to the php install directory.
After capturing the packets going between the web server and the database server on both
configurations, I discovered that the broken system was trying to authenticate using SMB; the
working configuration was using the MSSQL TDS protocol. Another consideration might be that in the
working configurations, IIS was running as a domain user, while the broken configuration was running
under the local IUSR account.