Почему я получаю: неопределенная подпрограмма

Я пытаюсь переместить существующие файлы Perl на новый сервер и получаю сообщение об ошибке (файл error_log). Работает на старом сервере.

Когда я получаю доступ к: http://2x.29.xx.xx/admin/web.pl

Я получаю ошибку:

[ошибка] Неопределенная подпрограмма &web_main::main, вызываемая в /var/www/path/web.pl строка 40.

Файлweb.pl, он выглядит примерно так:

#!/usr/bin/perl -w

use strict;
use warnings;

use lib '/var/www/web';

our $var = '/var/www/web';
our $var1; 
our $var2; 
use web_main qw($var $var1 $var2);

web_main::main();  # Line 40

Файлweb_main.pm (в /var/www/web), выглядит примерно так:

#!/usr/bin/perl -w

package web_main;

use strict;
use warnings;

sub main
{

  # Lots of code here... removed for brevity
}

Не уверен, что пошло не так?

1 ответ

Я не очень разбираюсь в Perl, но, возможно, вам нужно экспортировать основную подпрограмму? Вы можете использовать Экспортер.

Другие вопросы по тегам