[RESOLVED] /cgi-bin/ script don't run and return 500 Internal Server Error

Hello,

i’ve migrate plesk website to virtualmin on a test server.
All is running, but i cannot execute script on /home/site_name/cgi-bin/

The script name is : request

is a paiement script place on php page :
$result=exec("$bin_request $parm");
the $bin_request = /home/site_name/cgi-bin/request

if you test : http://178.32.97.31/cgi-bin/request
you have a “500 Internal Server Error”

in suexec log : uid: (517/magasin) gid: (504/magasin) cmd: request

in apache error log :
[Fri Jun 14 01:29:33 2013] [error] [client 85.12.140.27] suexec failure: could not open log file
[Fri Jun 14 01:29:33 2013] [error] [client 85.12.140.27] fopen: Permission denied
[Fri Jun 14 01:29:33 2013] [error] [client 85.12.140.27] Premature end of script headers: request

suexec -V :
-D AP_DOC_ROOT="/home"
-D AP_GID_MIN=100
-D AP_HTTPD_USER=“apache”
-D AP_LOG_EXEC="/var/log/httpd/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=500
-D AP_USERDIR_SUFFIX=“public_html”

Can you help me !! :slight_smile:

i’ve forgot a configuration ?

Thanks

Howdy,

Hmm, if you rename the script from “request” to “request.cgi” – and then access /cgi-bin/request.cgi – does that work? Or does that throw the same error?

-Eric

Same Error,

and i see that is a file http://178.32.97.31/cgi-bin/php5.cgi on this dir, and same error…

Well, the php5.cgi script isn’t meant to be called directly, and will throw an error when that happens.

Out of curiosity, do you see a different error if you go into Server Configuration -> Website Options, and change the PHP Execution Mode to “CGI”?

When you try that, check the Apache logs in $HOME/logs/error_log to see what error(s) it’s throwing.

-Eric

Hello

i’ve try on mod_php (but on this mode, my php page not execute but show…) :
(2)No such file or directory: exec of ‘/home/magasin/cgi-bin/request’ failed
Premature end of script headers: request

i’ve try on CGI :
suexec failure: could not open log file
fopen: Permission denied
Premature end of script headers: request

in suexec log : uid: (517/magasin) gid: (504/magasin) cmd: request

i don’t know if request (ATOS script for bank payment) can be call in direct.

on my php page, i’ve : exec("/home/magasin/cgi-bin/request blablabla") that always return a string 0;
if i test on plesk server, the result is : string(2753) “!0!!<INPUT TYPE=HIDDEN NAME=DATA VALUE=” …

I don’t understand why the script don’t run into virtualmin…
i will try to install a new centos 6.x and restore server…

Other information, i don’t know what is the langage of the request script (cgi, perl !??)
if i do a nano
i’ve : ^?ELF^A^A^A^@^@^@^@^@^@^@^@ etc…
and end of file is : …on_start__^@strcpy@@GLIBC_2.0^@

i’ve install a new centos 6.3, and same problem…

In CGI mode error_log present a new message :
sh: /home/magasin/cgi-bin/request: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory, referer: http://webserver.greendev.fr/magasin-de-mode/commander.html?checkout_last_step=3

if i do ls -la /home/magasin/cgi-bin/request
result : -rwxr-xr-x. 1 magasin magasin 117257 7 juil. 2005 /home/magasin/cgi-bin/request

an idea ??

why php don’t see my request file ?

FOUND SOLUTION :

the request is a GLIBC file.

juste i’ve do : yum install glibc.i686 and install

now all run

YES!

Ah, that’s great, I’m glad you got it working… thanks for letting us know how you fixed it!

-Eric