apache - 使用 dispatch.cgi 运行 CGI 时出现 perl Dancer 问题

标签 apache perl sqlite cgi dancer

我正在尝试让我的项目在 Dancer(perl 5.16.3 和 centos 5.10)上运行,到目前为止,这是一次愉快的体验——直到我尝试将它部署在服务器上。

我决定做最简单的事情,并在帮助下将其作为 CGI 应用程序运行
来自 Dancer 发行版的默认 dispatch.cgi 脚本。

我使用了 Dancer::Deployment 手册中的默认 apache 设置,但是
出问题了。经过一天半工作的挣扎
项目我推断出以下奇怪的事情:在运行时
dispatch.cgi,我的项目能够从 sqlite 数据库中读取,但是它
无法写入数据库,所以 Dancer::Session::DBI 不工作
正确,因此问题。

如果我使用独立的 app.pl 或使用

plackup -E production -p 80 bin/app.pl

它工作正常并且能够将数据插入数据库。我试图改变
对 sqlite db 文件的 0666 权限,但它没有帮助。

那么为什么 sqlite 在作为 CGI 运行时会出现问题,以及如何解决这个问题?

最佳答案

好吧,这是权限问题,但不是 dbase 文件 - 因为目录包含该文件!
显然,sqlite 在更新基础时会创建一些临时文件。
谨防。

关于apache - 使用 dispatch.cgi 运行 CGI 时出现 perl Dancer 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23771313/

相关文章:

python - Django View 发送带有正确 header 的空回复

apache - htaccess将index.php重定向到根目录(包括子域)

perl - Perl 的 rand 参数可以有多大?

perl - 检查通过 LWP 请求返回的 SSL 证书

如果 url 包含 Catalogsearch/result/?q=SOMETHING 使用 .htaccess,Apache 将 URL 重写为小写

PHP 启动 : Unable to load dynamic library 'C:\xampp\php\ext\php_oci8_12c.dll' - The specified procedure could not be found

regex - perl grep 10 行日志

c# - 如何批量查询SQLite数据库

android - Android NDK 上的 sqlite3 库大小非常大

java - Hibernate SQLite SQLITE_BUSY