¿Por qué mi servidor no se conectará a un servidor MSSQL remoto utilizando PHP mssql_connect?

He tenido que mover una aplicación que escribimos para un cliente a un nuevo servidor y una conexión remota que estaba iniciando con PHP mssql_connect ha dejado de funcionar. Noté que PHP no se compiló con mssql, así que le pedí al administrador del servidor que lo instalara. Puedo verificar que ahora esté instalado a través de la información de PHP, pero ahora recibo un error consistente de “no se puede conectar al servidor” de mssql_connect.

Aquí está el script PHP muy simple que estoy ejecutando:

$myServer = "myserver.com:5000"; $myUser = "myusername"; $myPass = "mypassword"; $dbhandle = mssql_connect($myServer, $myUser, $myPass) or die("Couldn't connect to SQL Server on $myServer. Error: " . mssql_get_last_message()); 

Confirmé que las credenciales siguen siendo correctas, pero por alguna razón parece que mssql_connect no está haciendo lo correcto. Me pregunto si hay algo que el administrador haya olvidado de haber instalado la extensión y FreeTDS. ¡Cualquier apuntador muy apreciado! 🙂

¡¡¡PROBLEMA RESUELTO!!!

Después de todo, resultó ser el número de versión del protocolo FreeTDS especificado en /usr/local/freetds/etc/freetds.conf, la línea número 13 tuvo que ser descomentada. ¡Eso fue todo! 🙂

Después de todo, resultó ser el número de versión del protocolo FreeTDS especificado en /usr/local/freetds/etc/freetds.conf, la línea número 13 tuvo que ser descomentada. ¡Eso fue todo! 🙂

Existe una buena posibilidad de que las conexiones remotas estén deshabilitadas en el servidor donde está instalado el servidor. ¿Ha comprobado si puede conectarse al servidor DB de manera remota, desde la dirección IP del servidor web que intenta conectarse a él? Por lo general, al menos en la mayoría de los esquemas de alojamiento compartido, el servidor de base de datos solo acepta conexiones de localhost. Debería agregar la dirección IP del servidor web a una lista blanca (generalmente en la configuración del servidor) para permitir conexiones desde el exterior.