【问题标题】:Starting web development with Perl Dancer2使用 Perl Dancer2 开始 Web 开发
【发布时间】:2020-07-14 15:59:05
【问题描述】:

我从典型的“Hello word”开始: (我正在使用 Fedora 30)

(文件名 Web.pl)

#!/usr/bin/env perl
use Dancer2;

get '/' => sub {
   "Hello World!"
};

dance; 

然后我在终端执行:

$ perl Web.pl

它给了我这个:

Dancer2 v0.300000 server 12191 listening on http://0.0.0.0:3000

那我试试:

$ curl http://0.0.0.0:3000

它给了我这个答案:

curl: (7) Failed to connect to 0.0.0.0 port 3000: Connection refused

我做错了什么?

【问题讨论】:

  • 你是在同一个终端做的吗?该程序需要继续运行。您必须为您的curl 使用不同的终端,或使用浏览器。
  • 谢谢,你解决了我的问题
  • 如果我想用 Dancer2 做一个网页,我需要不断地运行脚本吗?
  • 是的,您需要运行脚本。脚本使用的软件正在运行一个小型 Web 服务器,并向浏览器展示您所拥有的内容。
  • 我认为您无法连接到0.0.0.0。当你创建一个监听0.0.0.0的服务器时,这意味着服务器监听每个接口。但是我认为您仍然需要使用其中一个接口的IP地址来连接服务器(例如127.0.0.1

标签: perl dancer


【解决方案1】:

正如@simbabque 建议的那样,您需要保持应用程序在原始终端中运行并打开另一个终端来调用相同的端点。当您尝试使用同一个进程时,该进程(即服务器)将停止。

【讨论】:

  • 没有任何服务器可以让你在他们的服务器上运行你的脚本,所以我不必在我的电脑上运行它,因此网页设计几乎总是在线?
  • @Alex Gomez,是的,存在这样的服务。托管服务的建议超出了 SO 的范围。
  • metacpan.org/pod/distribution/Dancer2/lib/Dancer2/Manual/… 中有一些提示。这不是一个完整的列表,但它是一个很好的起点。您现在使用的开发部署适合生产。
猜你喜欢
  • 2010-11-19
  • 1970-01-01
  • 2011-08-21
  • 1970-01-01
  • 1970-01-01
  • 2011-05-03
  • 1970-01-01
  • 1970-01-01
  • 2011-05-21
相关资源
最近更新 更多