0

このスクリプトを使用して、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);
     ?>
4

2 に答える 2

0

PHP は通常、cli 用と Apache 用の 2 つの php.ini ファイルを実行します。cli だけでなく、両方で mssql 拡張機能が有効になっていることを確認する必要があります。

extension=php_mssql.dll

また

extension=php_mssql.so

有効にする必要がある正確なモジュール名がわかりません

于 2012-06-27T10:57:45.837 に答える
0

私は同様の問題を抱えており、これが私の解決策です:):

while checkig status of httpd "serive httpd status -l"

gru 01 08:58:27 pc6.home python[123130]: SELinux は /usr/sbin/httpd からtcp_socket ポート 1433への 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 への接続に関するすべての問題が修正されます

于 2015-12-01T08:12:59.943 に答える