Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Strawberry Perl and IIS not playing

by mr_mischief (Monsignor)
on May 28, 2010 at 12:46 UTC ( [id://842031]=note: print w/replies, xml ) Need Help??


in reply to Strawberry Perl and IIS not playing

Not sending a complete set of HTTP headers often means not sending any. Not sending any often means the program is dying before it produces any output. Try running your code under Strawberry as the IIS user and see if it gives you any errors. That, or try CGI::Carp or something to get the errors in your browser.
use CGI::Carp qw( fatalsToBrowser ); die "Fatal error messages are now sent to browser";

Replies are listed 'Best First'.
Re^2: Strawberry Perl and IIS not playing
by bunchily (Novice) on May 28, 2010 at 13:53 UTC

    Many thanks for this. We may be getting there. I'm not too sure how to make the change with regard the IIS user. However, I've done the CGI::Carp thing and a page came back thus:

    Software error:

    install_driver(mysql) failed: Can't load 'C:/strawberry/perl/vendor/li +b/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:The spec +ified module could not be found at C:/strawberry/perl/lib/DynaLoader. +pm line 200. at (eval 42) line 3 Compilation failed in require at (eval 42) line 3. Perhaps a required shared library or dll isn't installed where expecte +d at c:\inetpub\wwwroot\index_test.pl line 223

    For help, please send mail to this site's webmaster, giving this error message and the time and date of the error.

    ----------- END OF ERROR ---------------

    I checked out line 200 of DynaLoader.pm and it contains this:

    my $libref = dl_load_file($file, $module->dl_load_flags) or croak("Can +'t load '$file' for module $module: ".dl_error());

    But then immediately before this is the following comment:

    # Many dynamic extension loading problems will appear to come from # this section of code: XYZ failed at line 123 of DynaLoader.pm. # Often these errors are actually occurring in the initialisation # C code of the extension XS file. Perl reports the error as being # in this perl code simply because this was the last perl code # it executed.

    Down the rabbit hole we go . . .

      This most likely means that either DBD::mysql is not installed on your machine or that at least one of the DLLs required by DBD::mysql is not installed. You will likely need to install (and potentially set up) the MySQL client.

      Do you have DBD::mysql installed on this server? Check out the instructions INSTALL file.

      Update: fixed typo in module name, added link to INSTALL file.

        For the record: yes, dbd::mysql was installed:

        Please type in a space-separated list of modules you want to find the installed versions for below. > dbd::mysql The version of dbd::mysql in C:/strawberry/perl/vendor/lib is 4.014 Press any key to exit.

        I think the problem was this weird .dll file referred to above. Many thanks for all your help.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://842031]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others exploiting the Monastery: (4)
As of 2024-04-25 12:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found