我有一个http服务器,它使用cpan中的模块HTTP::AppServer。如何为HTTP :: AppServer添加ipv6支持?
我可以连接到我的服务器使用127.0.0.1
或localhost
,而它的悲惨失败与::1
。
这里有一些例子,卷曲:
$ curl http://127.0.0.1:8080/index.html
This is a test.
$ curl -g http://[::1]:8080/index.html
curl: (7) couldn't connect to host
这是服务器的启动方式:
use HTTP::AppServer;
use IO::Socket::IP -register;
my $server = HTTP::AppServer->new(StartBackground => 0, ServerPort => 8080);
$server->plugin('FileRetriever', DocRoot => '/tmp');
$server->start;
其实这是一个复杂得多。但是我不认为剧本的其余部分都是必要的。我已经添加了模块IO::Socket::IP并将模块套接字升级到找到的版本here以使IO :: Socket :: IP工作。
不过,它不起作用。
对不起,我不能。我的软件将运行在仍然具有perl 5.8.8的机器上。我必须保证与perl版本的兼容性。 – Zagorax 2012-07-11 23:09:28
我编辑了我的代码来使用IO :: Socket :: IP,但它仍然不会侦听ipv6地址。 – Zagorax 2012-07-12 08:28:12