LINUX.ORG.RU

CGI не выполняется

 


0

1

Триста раз проверил по апачевскому мануалу httpd.conf, permissions - ну всё правильно. Но Firefox выдаёт только текст сgi-файла.

На всякий случай, содержание httpd.conf:

AddHandler cgi-script .cgi .pl

<Directory "/usr/local/apache2/cgi-bin">
    AllowOverride All
    Options +ExecCGI
    Order allow,deny
    Allow from all
</Directory>

first.cgi:

#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello, World.";

Сам файл запускается из командной строки и ведёт себя правильно.



Последнее исправление: beastie (всего исправлений: 1)

print «Content-type: text/html\r\n\r\n»;

aol ★★★★★
()
Ответ на: комментарий от Eddy_Em

ну вот если ещё с моим httpd.conf будет работать ...

ServerRoot «/usr/local/apache2»

Listen 80

AddHandler cgi-script .cgi .pl

<IfModule !mpm_netware_module>

<IfModule !mpm_winnt_module>

User daemon

Group daemon

</IfModule>

</IfModule>

ServerAdmin you@example.com

DocumentRoot «/usr/local/apache2/htdocs»

AddHandler cgi-script .cgi

<Directory />

Options FollowSymLinks ExecCGI

AllowOverride All

Order allow,deny

Allow from all

</Directory>

<Directory «/usr/local/apache2/htdocs»>

Options Indexes FollowSymLinks ExecCGI

AllowOverride All

Order allow,deny

Allow from all

</Directory>

<IfModule dir_module>

DirectoryIndex index.html

</IfModule>

<FilesMatch «^\.ht»>

Order allow,deny

Deny from all

Satisfy All

</FilesMatch>

ErrorLog «logs/error_log»

LogLevel warn

<IfModule log_config_module>

LogFormat «%h %l %u %t \»%r\" %>s %b \«%{Referer}i\» \«%{User-Agent}i\»" combined

LogFormat «%h %l %u %t \»%r\" %>s %b" common

<IfModule logio_module>

LogFormat «%h %l %u %t \»%r\" %>s %b \«%{Referer}i\» \«%{User-Agent}i\» %I %O" combinedio

</IfModule>

CustomLog «logs/access_log» common

</IfModule>

<IfModule alias_module>

ScriptAlias /cgi-bin/ «/usr/local/apache2/cgi-bin/»

</IfModule>

<IfModule cgid_module>

</IfModule>

AddHandler cgi-script .cgi .pl

<Directory «/usr/local/apache2/cgi-bin»>

AllowOverride All

Options ExecCGI

Order allow,deny

Allow from all

</Directory>

DefaultType text/plain

<IfModule mime_module>

TypesConfig conf/mime.types

AddType application/x-compress .Z

AddType application/x-gzip .gz .tgz

AddHandler cgi-script .cgi

</IfModule>

<IfModule ssl_module>

SSLRandomSeed startup builtin

SSLRandomSeed connect builtin

</IfModule>

jonny23
() автор топика
Ответ на: комментарий от Eddy_Em

если добавляю, то

[root@localhost cgi-bin]# /usr/local/apache2/bin/apachectl -k restart

httpd: Syntax error on line 58 of /usr/local/apache2/conf/httpd.conf: module cgi_module is built-in and can't be loaded

jonny23
() автор топика
Ответ на: комментарий от Eddy_Em

[Mon Jun 01 20:59:04 2015] [notice] caught SIGTERM, shutting down
[Mon Jun 01 20:59:05 2015] [notice] Apache/2.2.29 (Unix) configured — resuming normal operations

эта запись появляется при рестарте httpd.

Попытка открыть cgi файл в Firefox никаких следов в error.log не оставляет.

jonny23
() автор топика
Ответ на: комментарий от Eddy_Em

[root@localhost logs]# tail access_log
127.0.0.1 - - [31/May/2015:13:13:53 +0300] «GET /favicon.ico HTTP/1.1» 404 209
127.0.0.1 - - [31/May/2015:13:13:53 +0300] «GET /favicon.ico HTTP/1.1» 404 209
127.0.0.1 - - [31/May/2015:13:14:13 +0300] «GET / HTTP/1.1» 200 44
127.0.0.1 - - [31/May/2015:16:20:41 +0300] «GET /favicon.ico HTTP/1.1» 404 209
127.0.0.1 - - [31/May/2015:16:20:41 +0300] «GET /favicon.ico HTTP/1.1» 404 209
127.0.0.1 - - [31/May/2015:16:20:51 +0300] «GET / HTTP/1.1» 304 -
127.0.0.1 - - [31/May/2015:22:11:37 +0300] «GET /favicon.ico HTTP/1.1» 404 209
127.0.0.1 - - [31/May/2015:22:11:37 +0300] «GET /favicon.ico HTTP/1.1» 404 209
127.0.0.1 - - [01/Jun/2015:15:06:38 +0300] «GET /favicon.ico HTTP/1.1» 404 209

тоже никаких следов...

jonny23
() автор топика
Ответ на: комментарий от jonny23

Следов нет → косяк не в настройках апача.

Eddy_Em ☆☆☆☆☆
()

1) mod_cgi загружен?

2) Скрипт точно в /usr/local/apache2/cgi-bin лежит?

3) Где Script-alias ?

r_asian ★☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.