[freetds] PHP PDO object not working with freetds/unixODBC
Daniel Fazekas
fdsubs at t-online.hu
Tue Dec 23 15:41:22 EST 2008
On Dec 23, 2008, at 21:14, Craig Metrolis wrote:
> Hi, I am trying to setup an odbc connection to a Microsoft SQL
> Express server using an "ODBC-combined" configuration. Both isql and
> tsql are working fine, but whenever I try to run a simple PHP script
> to connect to the same DSN, I am getting the following error,
Where is that PHP script running? Inside a web server? Could you
reproduce the failure even when trying to execute your script from the
command line?
You didn't say what operating system you're using, but it's becoming
quite a common occurrence here that people are surprised by the
default configuration of SELinux-enabled Linux distributions, where
apps running inside the web server are forbidden from accessing remote
addresses - including remote databases - as a security precaution.
If that applies to you, the man page httpd_selinux documents the
available settings.
As root, either
setsebool -P httpd_can_network_connect_db 1
or
setsebool -P httpd_can_network_connect 1
will solve it.
The first one is more restrictive and only allows connections to
whatever your system considers common database server ports.
If that wasn't your problem, you'll have to look at the TDSDUMP
logging feature to figure out what's really going on.
More information about the FreeTDS
mailing list