Php SQLite3无法打开数据库

Php SQLite3无法打开数据库,php,sqlite,Php,Sqlite,在我的PHP文件(register.PHP)中,我有以下内容: class DB extends SQLite3{ function __construct(){ $this->open('/usr/share/nginx/www/cgi-bin/db/userpass.db'); } } $db = new DB(); $stmt = $db->prepare('INSERT INTO userpass VALUES(:user, :encryp

在我的PHP文件(register.PHP)中,我有以下内容:

class DB extends SQLite3{
    function __construct(){
        $this->open('/usr/share/nginx/www/cgi-bin/db/userpass.db');
    }
}

$db = new DB();

$stmt = $db->prepare('INSERT INTO userpass VALUES(:user, :encrypted_pass)');
$stmt->bindValue(':user', $user);
$stmt->bindValue(':encrypted_pass', $encrypted_pass);

if($stmt->execute() == FALSE) die(1); //line 25
它抛出:

Warning: SQLite3Stmt::execute(): Unable to execute statement: unable to open database file in /path/to/register.php on line 25
我正在使用来自Raspbian存储库的nginx、PHP5、SQLite3和
PHP5-SQLite3

编辑:ls-l/usr/share/nginx/www/cgi-bin/db的输出

total 4
-rw-rw-rw- 1 root root 3072 Nov 11 19:17 userpass.db

您是否检查过执行php脚本的用户是否具有按您指定的路径创建(数据库)文件的权限?@Thomas我将如何检查?我对这类东西很陌生,如果这是facepalm-inducting的话,很抱歉。如果你能显示你想要用于数据库的实际路径,那会很有帮助。我假设您有一个标准的raspian设置,并且您的php脚本在/var/www下-如果您以用户身份创建它们,并且php以“www-data”运行,则没有创建数据库文件的权限。@Thomas添加了完整路径。您能发布
ls-l/usr/share/nginx/www/cgi-bin/db/
的输出吗?