in reply to Re^2: running a backticks command behaves different in command line and browser
in thread running a backticks command behaves different in command line and browser
LD_LIBRARY_PATH specifies directories that the dynamic linker searches first. It is used when testing XS extensions to pick up the newly built extension rather than whatever is installed on the system.
haukex beat me to it, but I recommend simply putting delete $ENV{LD_LIBRARY_PATH} if $ENV{LD_LIBRARY_PATH} =~ m{/lampp/}; somewhere near the top of your script to ensure that any special values your httpd installation is using will not affect your script's subprocesses.
I also strongly advise against using shell commands when they can be avoided, particularly in Perl scripts exposed to the Web. As an example, your solution would have made your program vulnerable to ShellShock, even though you do not actually need a shell anywhere in this application.
How much output does this command produce? You may want to read the output incrementally rather than collecting it all. If so, also look into IPC::Open3 and possibly IO::Pty and Expect.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: running a backticks command behaves different in command line and browser
by haukex (Archbishop) on Aug 11, 2019 at 20:32 UTC | |
by jcb (Parson) on Aug 11, 2019 at 22:44 UTC | |
by haukex (Archbishop) on Aug 12, 2019 at 10:16 UTC |