PHP - mssql通过终端连接但在网络中失败

时间:2012-06-27 10:37:38

标签: php sql-server-2005

我正在使用这个脚本来测试我从linux服务器到mssql引擎的连接,我的问题是当我申请时 [root @ localhost html] #php sql.php 您已连接到mssql上的新数据库。

现在当我从web访问sql.php时,它给我错误“警告:mssql_connect():无法连接到服务器:”

有什么线索真的很讨厌,为什么我无法通过网络连接,同一本地网络防火墙中的两台服务器都关闭

?php

$myServer = "mssql"; // host/instance_name
$myUser = "sa"; // username
$myPass = "mypasswd"; // paasword
$myDB = "new"; // database name

 // connection to the database
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
 or die("Couldnt connect to SQL Server on $myServer");

// select a database to work with
 $selected = mssql_select_db($myDB, $dbhandle)
 or die("Couldn.t open database $myDB");

    echo "You are connected to the " . $myDB . " database on the " . $myServer . ".";

      // close the connection
        mssql_close($dbhandle);
     ?>

2 个答案:

答案 0 :(得分:0)

PHP通常运行两个php.ini文件,1个用于cli,1个用于Apache,你需要确保你的mssql扩展都启用了,而不仅仅是cli one

extension=php_mssql.dll

extension=php_mssql.so

我不确定您需要启用的精确模块名称

答案 1 :(得分:0)

我有类似的问题,这是我的解决方案:):

httpd"服务状态httpd状态-l"

gru 01 08:58:27 pc6.home python [123130]:SELinux在 tcp_socket端口1433 上阻止/ usr / sbin / httpd访问name_connect。

   *****  Plugin catchall_boolean (47.5 confidence) suggests   ******************

   If you want to allow httpd to can network connect
   Then you must tell SELinux about this by enabling the 'httpd_can_network_connect' boolean.
   You can read 'None' man page for more details.
   Do
   setsebool -P httpd_can_network_connect 1

并且正在执行命令 setsebool -P httpd_can_network_connect 1 修复连接到mssql的所有问题