[英]How can I ensure my PHP script is only run as a schedule job and not when run from a browser?
[英]My PHP script runs well from the server terminal with SSH. However, it does not run when I access the page from the browser
<html>
<body>
Hi
</body>
</html>
<?php
class MyDB extends SQLite3 {
function __construct() {
$this->open('db/test.db');
}
}
$db = new MyDB();
if(!$db) {
echo $db->lastErrorMsg();
} else {
echo "Opened database successfully\n";
}
$db->close();
?>
上面的代码是我的PHP代码。 输出是-
嗨,致命错误:在第7行的/var/www/html/db.php中找不到类'SQLite3'
在我的浏览器上
和
你好
成功打开数据库
在我的ssh终端上。 我不明白为什么。
作为试用,我已授予所有文件和文件夹777访问权限
这里的问题可能是sqlite3的php扩展。 您需要安装它。
在ubuntu机器上,您可以安装它:
sudo apt-get install php7.0-sqlite3
或sudo apt install php-sqlite3
作为最佳实践,切勿将许可设置为777
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.