Mojolicious - 无法使用hypnotoad启动应用程序

时间:2012-07-04 10:52:49

标签: perl mojolicious

正如标题所说,我不确定为什么。唯一发生的事情是工作目录中出现的hypnotaod.pid文件。没有正在运行的进程,没有监听已定义的端口。此外 - 一切都很好用morbo。

编辑:我已经试图启动,http://pastebin.com/YWUSeMuu

EDIT2:在查看上面的strace输出后,似乎hypnotad将另一个“.pl”附加到脚本文件中。我已将文件名更改为myapp,冲洗,重复http://pastebin.com/NVK2rhu4

任何有点想法的想法。

[root@fedora16 Mojo]# ./myapp.pl version
CORE
  Perl        (v5.14.2, linux)
  Mojolicious (3.02, Rainbow)

OPTIONAL
  EV              (4.11)
  IO::Socket::IP  (0.16)
  IO::Socket::SSL (1.76)

This version is up to date, have fun!

[root@fedora16 Mojo]# hypnotoad -t myapp.pl
Everything looks good!

[root@fedora16 Mojo]# hypnotoad  myapp.pl
Starting hot deployment for Hypnotoad server 29432.

现在的代码就是教程测试代码

use Mojolicious::Lite;

app->config(hypnotoad => {listen => ['http://*:3000']});
get '/' => {text => 'ALL GLORY TO THE HYPNOTOAD!'};
app->start;

6 个答案:

答案 0 :(得分:0)

要做的第一件事是尝试使用不同的端口(例如3001),以防它遇到3000问题。然后尝试使用MOJO_LOG_LEVEL=debug ...调用它以查看它是否提供更多信息。 确保您有一个名为“log”的可写目录并检查其输出。

答案 1 :(得分:0)

我遇到了类似的问题,使用--foreground,我设法发现很多关于用户'nobody'拒绝权限的警告,在更改用户参数后,问题得到解决。

有很多事情可以使催眠失败,尝试检查端口,文件,用户,组权限等。

答案 2 :(得分:0)

我也遇到了麻烦。只有当我碰巧阅读hypnotoad文档页面时,我才看到它说#34;它在端口8080上侦听。"果然,在我的浏览器中打开http://127.0.0.1:8080加载了我的应用程序。

答案 3 :(得分:0)

我遇到过这个问题,并且每次都与文件权限问题有关。

在所有情况下,morbo都会运行但是催眠不会。

使用前景标志可以帮助你。

答案 4 :(得分:0)

同样的事情发生在我身上,我删除了app目录中的.pid文件并再次启动了hypnotoad,它运行得很好! 希望这可以帮助。 微米。

答案 5 :(得分:0)

plugin 'Config';

之前将app->config添加到您的应用中

如果应用程序未加载“Config”插件,则不会应用配置

PS。 Mojo的作者并不认为plugin 'Config'在使用hypnotoad运行应用程序时非常实现而不是预期的命令。

请投票表明必须将其记录在案 因为当前的DOC太含蓄而无法理解