网页调用PHP脚本无法连接数据库的问题求助
网页调用PHP脚本无法连接数据库的问题求助
各位大佬好,我最近碰到一个让人头疼的问题,想请大家帮忙分析排查下:
我当前的运行环境是:Ubuntu 22.04,搭配nginx 1.18.0、mariadb 15.1 和 PHP 8.1.2。
下面是我的database.php代码:
<?php $SERVER_APP = "localhost"; $DATABASE_APP = "mydb"; $USERNAME_APP = "root"; $PASSWORD_APP = "password"; function db_connect() { global $SERVER_APP, $DATABASE_APP, $USERNAME_APP, $PASSWORD_APP; try { $dbApp = new PDO("mysql:host=$SERVER_APP;dbname=$DATABASE_APP", $USERNAME_APP, $PASSWORD_APP); $dbApp->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbApp->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); echo "Connected to db"; return $dbApp; } catch (PDOException $e) { echo $e->getMessage(); } }
我先在命令行做了测试,执行这条命令:
php -r "require 'database.php'; db_connect();"
结果完全正常,输出内容如下:
Connected to db
另外,我用mysql -u root -p输入密码后,也能顺利登录到数据库。
可问题来了——当我通过nginx网页访问调用这个数据库连接脚本的时候,却完全无法成功连接:既看不到预期的“Connected to db”提示,也没有任何错误信息输出。有没有大佬遇到过类似的情况?麻烦帮忙看看可能是哪里出问题了?
备注:内容来源于stack exchange,提问作者Mark
相关产品推荐
相关产品推荐

