PHP:无法从浏览器运行脚本,但从linux终端执行时工作正常

PHP:无法从浏览器运行脚本,但从linux终端执行时工作正常,php,mysql,linux,pdo,Php,Mysql,Linux,Pdo,我正在尝试使用PDO php脚本连接到远程mysql服务器。从终端运行时,脚本运行正常。我能够连接到远程mysql数据库 function db_connect($host, $username, $password, $db_name){ global $conn; try{ $conn = new PDO("mysql:host=$host;dbname=$db_name", $username, $password); $conn -> setAttribute(P

我正在尝试使用PDO php脚本连接到远程mysql服务器。从终端运行时,脚本运行正常。我能够连接到远程mysql数据库

function db_connect($host, $username, $password, $db_name){
global $conn;
try{
    $conn =  new PDO("mysql:host=$host;dbname=$db_name", $username, $password);
    $conn -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "success";
}

catch(PDOException $e)
    {
        echo "Connection failed: " . $e->getMessage();
    }
}
但当我从浏览器运行这个php脚本时,我得到了以下错误-

ERROR:SQLSTATE[HY000] [2003] Can't connect to MySQL server 
首先,我认为这是因为我正在从root用户运行脚本。 但我用一个测试用户测试了它,它仍然从终端运行,而不是从浏览器运行。 我还能够从mysql工作台连接到数据库。
我不知道原因。请提供一些解决方案。

一些与db连接相关的代码将有帮助。一些与db连接相关的代码将有帮助。