Как выполнить CGI на моем сервере?

Я хочу выполнить CGI на моем сервере, но у меня есть эта проблема:

run-detectors: unable to find an interpreter for /media/FTP/outils/cgi-bin/monitorCGI.cgi, >refererer: http://outils.mynd/backburner.
Premature end of scripts header: monitorCGI.cgi, referer: >http://outils.mynd/backburner.

мой apache2.conf выглядит так:

<location /media/FTP/racine/cgi-bin/>
Options +ExecCGI 
AddHandler cgi-script .cgi 
</Location>

Мой Vhost выглядит так:

>VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName SERV-FTP
    DocumentRoot /media/FTP

    Directory /media/FTP/racine/cgi-bin>
        Options +Indexes FollowSymLinks MultiViews +ExecCGI
        AddHandler cgi-script cgi
        Order allow,deny
        allow from all
    /Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Должен ли я связать вино для выполнения этого CGI?

1 ответ

Веб-сервер Apache не может запустить monitorCGI.cgi сценарий, потому что он не может найти переводчика для использования.

Это означает, что он не распознает monitorCGI.cgi как скомпилированный двоичный файл, и поэтому рассматривает его как скрипт и поэтому хочет, чтобы первая строка была #! /path/to/interpreter для некоторого переводчика.

Поскольку вы утверждаете, что скрипт является скомпилированным двоичным файлом, но Apache не распознает его как таковой, он, вероятно, скомпилирован для неправильной архитектуры.

Попробуйте команду file monitorCGI.cgi чтобы увидеть, к какому типу файлов относится ваша ОС. Возможно, он скомпилирован для 64-битной системы, когда вы используете 32-битную систему, или это исполняемый файл Windows, когда вы используете сервер Linux. В любом случае вам нужно найти совместимый двоичный файл для его работы. Попробуйте запустить скрипт непосредственно из командной строки, чтобы убедиться, что он может выполняться, прежде чем запускаться через Apache.

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