The perl scipts on my RedHat FC4 box are behaving strangely (as far as I can tell). The scripts error when run via the browser: Can't open perl script "/dir/script.pl": Permission denied
I've ensured that the permissions are correct (to the point of recursively chmodding everything in /var/www to world read and execute).
I created a small Hello World script (double checking that the shebang line was correct) in the cgi-bin directory - with the same problems. I ran the HW script from the command line with the syntax perl helloworld.pl (which worked) and then ran it with the syntax ./helloworld.pl (which did not work). The second syntax had an effect as if I just hit the return key - it did nothing.
I then copied the script to my home directory and tried both syntaxes - they both worked. I then created helloworld2.pl and tried to replicate this behaviour, but, sadly, this script did not work using the second syntax from my home directory.
I'm stumped. I've pasted my experience below.
~>cd /var/www/cgi-bin
/var/www/cgi-bin>cat helloworld.pl
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello World\n";
/var/www/cgi-bin>which perl
/usr/bin/perl
/var/www/cgi-bin>perl helloworld.pl
Content-type: text/html
Hello World
/var/www/cgi-bin>./helloworld.pl
/var/www/cgi-bin>cp helloworld.pl ~
/var/www/cgi-bin>cd
~>perl helloworld.pl
Content-type: text/html
Hello World
~>./helloworld.pl
Content-type: text/html
Hello World
~>cd /var/www/cgi-bin
/var/www/cgi-bin>cat helloworld2.pl
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello World2\n";
/var/www/cgi-bin>perl helloworld2.pl
Content-type: text/html
Hello World2
/var/www/cgi-bin>./helloworld2.pl
/var/www/cgi-bin>cp helloworld2.pl ~
/var/www/cgi-bin>cd
~>perl helloworld2.pl
Content-type: text/html
Hello World2
~>./helloworld2.pl
~>diff helloworld.pl helloworld2.pl
~>
EDIT 1: Specifically, all the scripts *are* executable.
EDIT2: ls -l /usr/bin/perl `which perl`
-rwxr-xr-x 2 root root 15660 Mar 13 2006 /usr/bin/perl
-rwxr-xr-x 2 root root 15660 Mar 13 2006 /usr/bin/perl
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|