- gt оверквотинг удален chmod x first cgi и будет работать, eRIC (?), 15:49 , 01-Июн-15 (1)
>[оверквотинг удален] > <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."; chmod +x first.cgi и будет работать
- gt оверквотинг удален К сожалению, нет , jonny23 (ok), 16:27 , 01-Июн-15 (2)
>[оверквотинг удален] >> 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."; > chmod +x first.cgi и будет работать К сожалению, нет.
- модуль , Pahanivo (ok), 16:59 , 01-Июн-15 (4) +1
- gt оверквотинг удален если модуль подгружен то должно работать если FF дает з, eRIC (?), 18:50 , 01-Июн-15 (14)
>[оверквотинг удален] >>> Options +ExecCGI >>> Order allow,deny >>> Allow from all >>> </Directory> >>> first.cgi: >>> #!/usr/bin/perl >>> print "Content-type: text/html\n\n"; >>> print "Hello, World."; >> chmod +x first.cgi и будет работать > К сожалению, нет.если модуль подгружен то должно работать. если FF дает закачать, значит cgi файл не обрабатывается обработчиком, т.е. perl'ом. вообще в системе есть perl? он точно по пути /usr/bin/perl? (а может быть /usr/local/bin/perl если учитывать что это FreeBSD) which perl в студию
- Хмм, какбэ плюсик в этой строке ненужен, лишний он там , михалыч (ok), 16:58 , 01-Июн-15 (3)
> Options +ExecCGI Хмм, какбэ плюсик в этой строке ненужен, лишний он там.
- Без плюсика тоже не работает , jonny23 (ok), 17:01 , 01-Июн-15 (5)
>> Options +ExecCGI > Хмм, какбэ плюсик в этой строке ненужен, лишний он там.Без плюсика тоже не работает :(
- Поставлю вопрос шире может ли CGI скрипт не работать, если httpd conf, first cg, jonny23 (ok), 17:05 , 01-Июн-15 (6)
>>> Options +ExecCGI >> Хмм, какбэ плюсик в этой строке ненужен, лишний он там. > Без плюсика тоже не работает :( Поставлю вопрос шире: может ли CGI скрипт не работать, если httpd.conf, first.cgi и его permissions абсолютно правильные? Если да, то как это диагностировать?
- А что-либо типо этого в httpd conf присутствует LoadModule perl_module libexec a, михалыч (ok), 17:16 , 01-Июн-15 (7)
>>>> Options +ExecCGI >>> Хмм, какбэ плюсик в этой строке ненужен, лишний он там. >> Без плюсика тоже не работает :( > Поставлю вопрос шире: > может ли CGI скрипт не работать, если httpd.conf, first.cgi и его permissions > абсолютно правильные? > Если да, то как это диагностировать?А что-либо типо этого в httpd.conf присутствует? LoadModule perl_module libexec/apache22/mod_perl.so
- root localhost conf usr local apache2 bin apachectl -lCompiled in modules , jonny23 (ok), 18:48 , 01-Июн-15 (13)
>>>>> Options +ExecCGI >>>> Хмм, какбэ плюсик в этой строке ненужен, лишний он там. >>> Без плюсика тоже не работает :( >> Поставлю вопрос шире: >> может ли CGI скрипт не работать, если httpd.conf, first.cgi и его permissions >> абсолютно правильные? >> Если да, то как это диагностировать? > А что-либо типо этого в httpd.conf присутствует? > LoadModule perl_module libexec/apache22/mod_perl.so [root@localhost conf]# /usr/local/apache2/bin/apachectl -l Compiled in modules: core.c mod_authn_file.c mod_authn_default.c mod_authz_host.c mod_authz_groupfile.c mod_authz_user.c mod_authz_default.c mod_auth_basic.c mod_include.c mod_filter.c mod_log_config.c mod_env.c mod_setenvif.c mod_version.c prefork.c http_core.c mod_mime.c mod_status.c mod_autoindex.c mod_asis.c mod_cgi.c mod_negotiation.c mod_dir.c mod_actions.c mod_userdir.c mod_alias.c mod_so.c Добавка LoadModule perl_module libexec/apache22/mod_perl.so ведет к ошибке [root@localhost conf]# /usr/local/apache2/bin/apachectl -k restart httpd: Syntax error on line 56 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/libexec/apache22/mod_perl.so into server: /usr/local/apache2/libexec/apache22/mod_perl.so: cannot open shared object file: No such file or directory
- gt оверквотинг удален To install the port cd usr ports www mod_perl2 mak, eRIC (?), 18:54 , 01-Июн-15 (15)
>[оверквотинг удален] > mod_dir.c > mod_actions.c > mod_userdir.c > mod_alias.c > mod_so.c > Добавка LoadModule perl_module libexec/apache22/mod_perl.so ведет к ошибке > [root@localhost conf]# /usr/local/apache2/bin/apachectl -k restart > httpd: Syntax error on line 56 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/libexec/apache22/mod_perl.so > into server: /usr/local/apache2/libexec/apache22/mod_perl.so: cannot open shared object > file: No such file or directory To install the port: cd /usr/ports/www/mod_perl2/ && make install clean To add the package: pkg install www/mod_perl2
- gt оверквотинг удален у меня в usr нет папки ports , jonny23 (ok), 20:41 , 01-Июн-15 (19)
>[оверквотинг удален] >> mod_userdir.c >> mod_alias.c >> mod_so.c >> Добавка LoadModule perl_module libexec/apache22/mod_perl.so ведет к ошибке >> [root@localhost conf]# /usr/local/apache2/bin/apachectl -k restart >> httpd: Syntax error on line 56 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/libexec/apache22/mod_perl.so >> into server: /usr/local/apache2/libexec/apache22/mod_perl.so: cannot open shared object >> file: No such file or directory > To install the port: cd /usr/ports/www/mod_perl2/ && make install clean > To add the package: pkg install www/mod_perl2 у меня в /usr/ нет папки ports ...
- У вас апач 2 0 Да ещё и не из портов ставленный М-да, однако Без модперл перл , михалыч (ok), 19:24 , 01-Июн-15 (17)
>>> Поставлю вопрос шире: >>> может ли CGI скрипт не работать, если httpd.conf, first.cgi и его permissions >>> абсолютно правильные? >>> Если да, то как это диагностировать?У вас апач 2.0? Да ещё и не из портов ставленный? М-да, однако.. Без модперл перл скрипты не заработают, (сам перл, надеюсь, установлен?) ну давайте, хоть, цги скрипты проверим создайте для проверки date.cgi touch /usr/local/apache2/cgi-bin/date.cgi chmod 555 /usr/local/apache2/cgi-bin/date.cgi в нём пишем следующее #!/bin/sh echo "Content-type: text/html" echo echo "Today is " date проверяем, набиваем в браузере http:// чего-то.там/cgi-bin/date.cgi
- gt оверквотинг удален Всё сделал В браузере вижу текст date cgiЯ открываю лока, jonny23 (ok), 20:32 , 01-Июн-15 (18)
>[оверквотинг удален] > создайте для проверки date.cgi > touch /usr/local/apache2/cgi-bin/date.cgi > chmod 555 /usr/local/apache2/cgi-bin/date.cgi > в нём пишем следующее > #!/bin/sh > echo "Content-type: text/html" > echo > echo "Today is " > date > проверяем, набиваем в браузере http:// чего-то.там/cgi-bin/date.cgi Всё сделал. В браузере вижу текст date.cgi Я открываю локально.
- эт чейта вдрух , Pahanivo (ok), 21:53 , 01-Июн-15 (24)
> Без модперл перл скрипты не заработают, (сам перл, надеюсь, установлен?) эт чейта вдрух?
- Патамучта они профисиоАНАЛы , Аноним (-), 16:38 , 02-Июн-15 (49)
>> Без модперл перл скрипты не заработают, (сам перл, надеюсь, установлен?) > эт чейта вдрух?Патамучта они профисиоАНАЛы? :)
- Стесняюсь спросить, но А у вас mod_cgi so загружен Расшифрую сообщение выше , PavelR (??), 17:36 , 01-Июн-15 (11)
> Если да, то как это диагностировать?Стесняюсь спросить, но... А у вас mod_cgi.so загружен? Расшифрую сообщение выше: >Сообщение от Pahanivo (ok) on 01-Июн-15, 16:59 >модуль?
- Кеш ff почистить или перечитать страницу с шифтом Какая версия апача Может, , Andrey Mitrofanov (?), 17:18 , 01-Июн-15 (8)
> Триста раз проверил по апачевскому мануалу httpd.conf, permissions - ну всё правильно. > Но Firefox выдаёт только текст сgi-файла.Кеш ff почистить или перечитать страницу "с шифтом"? > На всякий случай, содержание httpd.conf: > AddHandler cgi-script .cgi .pl > <Directory "/usr/local/apache2/cgi-bin"> > AllowOverride All > Options +ExecCGI Какая версия апача? Может, "мануал" не от той верисии? > first.cgi: Ну, и коронное: FreeBSD??
- ну всё, началось , сейчас гнобить будет, михалыч (ok), 17:20 , 01-Июн-15 (9)
> Ну, и коронное: FreeBSD??ну всё, началось )), сейчас гнобить будет
- Зачем, оно само справляется Ну, можно язефира с клоуном позвать - пусть помогаю, Andrey Mitrofanov (?), 17:23 , 01-Июн-15 (10)
>> Ну, и коронное: FreeBSD?? > ну всё, началось )), сейчас гнобить будет Зачем, оно само справляется. Ну, можно язефира с клоуном позвать - пусть помогают.
- Ща все трололо испортите А ну тссссс , Pahanivo (ok), 17:43 , 01-Июн-15 (12)
Ща все трололо испортите!! А ну тссссс!
- ServerRoot usr local apache2 Listen 80AddHandler cgi-script cgi pl IfModule , jonny23 (ok), 19:00 , 01-Июн-15 (16)
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>
- мои 5 копеек usr local bin perlперл переехал в локалв каталог со скриптом положи, Филимон Мяготка (?), 21:01 , 01-Июн-15 (20)
мои 5 копеек/usr/local/bin/perl перл переехал в локал в каталог со скриптом положить для тестов .htaccess со строчкой Options +ExecCGI
- ещё логи можно посмотреть, хотя это уже, конечно, слишком, Филимон Мяготка (?), 21:02 , 01-Июн-15 (21)
ещё логи можно посмотреть, хотя это уже, конечно, слишком
- root localhost apache2 tail logs access_log 127 0 0 1 - - 31 May 2015 13 13 , jonny23 (ok), 21:29 , 01-Июн-15 (22)
> ещё логи можно посмотреть, хотя это уже, конечно, слишком [root@localhost apache2]# tail logs/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 [root@localhost apache2]# tail logs/error_log [Mon Jun 01 17:42:17 2015] [notice] caught SIGTERM, shutting down [Mon Jun 01 21:38:05 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal operations [Mon Jun 01 21:38:08 2015] [notice] SIGHUP received. Attempting to restart [Mon Jun 01 21:38:08 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal operations [Mon Jun 01 20:58:30 2015] [notice] caught SIGTERM, shutting down [Mon Jun 01 20:58:33 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal operations [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 [Mon Jun 01 21:25:14 2015] [notice] caught SIGTERM, shutting down [Mon Jun 01 21:25:16 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal operations Попытка просмотреть cgi файл в браузере никаких следов не оставляет.
- gt оверквотинг удален я конечно понимаю что тут некоторым нравится театр абсур, Pahanivo (ok), 21:56 , 01-Июн-15 (25)
>[оверквотинг удален] > [Mon Jun 01 20:58:30 2015] [notice] caught SIGTERM, shutting down > [Mon Jun 01 20:58:33 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal > operations > [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 > [Mon Jun 01 21:25:14 2015] [notice] caught SIGTERM, shutting down > [Mon Jun 01 21:25:16 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal > operations > Попытка просмотреть cgi файл в браузере никаких следов не оставляет.я конечно понимаю что тут некоторым нравится театр абсурда, но лично вас не смущает что еррор и ацес лог толичаются по времени НА СУТКИ? вас не смущает что скрипты вы настраиваете сегодня а логи смотрите за вчера?
- gt оверквотинг удален смущает и я не знаю, в чём проблема , jonny23 (ok), 22:10 , 01-Июн-15 (26)
>[оверквотинг удален] >> [Mon Jun 01 20:59:05 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal >> operations >> [Mon Jun 01 21:25:14 2015] [notice] caught SIGTERM, shutting down >> [Mon Jun 01 21:25:16 2015] [notice] Apache/2.2.29 (Unix) configured -- resuming normal >> operations >> Попытка просмотреть cgi файл в браузере никаких следов не оставляет. > я конечно понимаю что тут некоторым нравится театр абсурда, но лично вас > не смущает что еррор и ацес лог толичаются по времени НА > СУТКИ? вас не смущает что скрипты вы настраиваете сегодня а логи > смотрите за вчера?смущает. и я не знаю, в чём проблема.
- я переустановил yum install httpdhttpd conf и permissions все по апаче-мануалу п, jonny23 (ok), 22:49 , 01-Июн-15 (27)
я переустановил yum install httpdhttpd.conf и permissions все по апаче-мануалу проверил тристопервый раз. со всеми этими 1) Options ExecCGI, 2) ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" 3) AddHandler cgi-script .cgi Попытка посмотреть cgi файл в firefox не оставляет никаких следов в логах: [root@localhost cgi-bin]# tail /var/log/httpd/error_log [Mon Jun 01 22:31:50.116878 2015] [so:warn] [pid 6162] AH01574: module cgi_module is already loaded, skipping [Mon Jun 01 22:31:50.117846 2015] [auth_digest:notice] [pid 6162] AH01757: generating secret for digest authentication ... [Mon Jun 01 22:31:50.118488 2015] [lbmethod_heartbeat:notice] [pid 6162] AH02282: No slotmem from mod_heartmonitor [Mon Jun 01 22:31:50.119939 2015] [mpm_prefork:notice] [pid 6162] AH00163: Apache/2.4.10 (Fedora) configured -- resuming normal operations [Mon Jun 01 22:31:50.119964 2015] [core:notice] [pid 6162] AH00094: Command line: 'httpd' [Mon Jun 01 22:37:12.113411 2015] [mpm_prefork:notice] [pid 6162] AH00173: SIGHUP received. Attempting to restart [Mon Jun 01 22:37:12.120174 2015] [auth_digest:notice] [pid 6162] AH01757: generating secret for digest authentication ... [Mon Jun 01 22:37:12.120903 2015] [lbmethod_heartbeat:notice] [pid 6162] AH02282: No slotmem from mod_heartmonitor [Mon Jun 01 22:37:12.122209 2015] [mpm_prefork:notice] [pid 6162] AH00163: Apache/2.4.10 (Fedora) configured -- resuming normal operations [Mon Jun 01 22:37:12.122240 2015] [core:notice] [pid 6162] AH00094: Command line: 'httpd' [root@localhost cgi-bin]# tail /var/log/httpd/access_log 127.0.0.1 - - [01/Jun/2015:22:25:12 +0300] "GET /favicon.ico HTTP/1.1" 404 209 "-" "Mozilla/5.0 (X11; Linux i686; rv:32.0) Gecko/20100101 Firefox/32.0" [root@localhost cgi-bin]#
- клево, а где хоть кокой-то намек в логе на обращение к скрипту , Pahanivo (ok), 23:02 , 01-Июн-15 (28)
клево, а где хоть кокой-то намек в логе на обращение к скрипту?
- подозрительно это все , Square (ok), 00:06 , 02-Июн-15 (30)
> клево, а где хоть кокой-то намек в логе на обращение к скрипту? подозрительно это все...
- Вы на этот алиас прописали в конфиге разрешение выполнения скриптов Раньше он у , Square (ok), 23:42 , 01-Июн-15 (29)
> 2) ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" Вы на этот алиас прописали в конфиге разрешение выполнения скриптов? Раньше он у вас был другой: <Directory "/usr/local/apache2/cgi-bin"> AllowOverride All Options ExecCGI Order allow,deny Allow from all </Directory> В конфиге присутствует строка LoadModule cgi_module modules/mod_cgi.so ? Если ее там нет- то механизм cgi просто не задействован. Механизм modperl как выше выяснилось - не был задействован. попробуйте запустить свой скрипт в консоли.. он вообще работает? посмотрите логи system и messages
даже если ваш скрипт показывается текстом а не выполняется- в логах апача обязан появиться сигнал об обращении к нему- с ошибкой или нет - но обязан. вы уверены что ваш апачь- действительно ЭТОТ апач? он точно воспринял ЭТОТ конфиг? Может вы правите не тот конфиг? Может у вас уже чтото висит на 80 порту? Может ваш сервер кладет логи в другое место вообще а те что вы смотрите - от чегото иного? убейте все процессы слушающие 80 порт. запустите апач в консоли а не демоном, указав ему конкретный конфигурационный файл воткните SetHandler cgi-script прямо в директорию, вот так: <Directory "/usr/local/apache2/cgi-bin"> SetHandler cgi-script AllowOverride All Options ExecCGI Order allow,deny Allow from all </Directory> Еще раз прочтите http://httpd.apache.org/docs/2.4/howto/cgi.html
- я давно намекаю автору что тут что-то не так , Pahanivo (ok), 07:57 , 02-Июн-15 (31)
> вы уверены что ваш апачь- действительно ЭТОТ апач? он точно воспринял ЭТОТ > конфиг? > Может вы правите не тот конфиг? > Может у вас уже чтото висит на 80 порту? > Может ваш сервер кладет логи в другое место вообще а те что > вы смотрите - от чегото иного?я давно намекаю автору что тут что-то не так ...
- gt оверквотинг удален попытался добавить mod_perl root localhost cgi-bin ht, jonny23 (ok), 07:57 , 02-Июн-15 (32)
>[оверквотинг удален] > запустите апач в консоли а не демоном, указав ему конкретный конфигурационный файл > воткните SetHandler cgi-script прямо в директорию, вот так: > <Directory "/usr/local/apache2/cgi-bin"> > SetHandler cgi-script > AllowOverride All > Options ExecCGI > Order allow,deny > Allow from all > </Directory> > Еще раз прочтите http://httpd.apache.org/docs/2.4/howto/cgi.html попытался добавить mod_perl: [root@localhost cgi-bin]# httpd -k restart httpd: Syntax error on line 59 of /etc/httpd/conf/httpd.conf: Cannot load modules/mod_perl.so into server: /etc/httpd/modules/mod_perl.so: cannot open shared object file: No such file or directory - gt оверквотинг удален А зачем вы стали добавлять модперл Я вас про него спраш, Square (ok), 10:49 , 02-Июн-15 (36)
>[оверквотинг удален] >> Options ExecCGI >> Order allow,deny >> Allow from all >> </Directory> >> Еще раз прочтите http://httpd.apache.org/docs/2.4/howto/cgi.html > попытался добавить mod_perl: > [root@localhost cgi-bin]# httpd -k restart > httpd: Syntax error on line 59 of /etc/httpd/conf/httpd.conf: Cannot load modules/mod_perl.so > into server: /etc/httpd/modules/mod_perl.so: cannot open shared object file: No such file > or directory А зачем вы стали добавлять модперл? Я вас про него спрашивал? Я вас спросил подключен ли модуль модЦГИ. Вы проверили? Вы проверили остальные пункты о которых я вас спросил?
- gt оверквотинг удален Потому что у него first cgi usr bin perlprint Conten, ford1813 (ok), 10:53 , 02-Июн-15 (37) –2
>[оверквотинг удален] >>> </Directory> >>> Еще раз прочтите http://httpd.apache.org/docs/2.4/howto/cgi.html >> попытался добавить mod_perl: >> [root@localhost cgi-bin]# httpd -k restart >> httpd: Syntax error on line 59 of /etc/httpd/conf/httpd.conf: Cannot load modules/mod_perl.so >> into server: /etc/httpd/modules/mod_perl.so: cannot open shared object file: No such file >> or directory > А зачем вы стали добавлять модперл? Я вас про него спрашивал? > Я вас спросил подключен ли модуль модЦГИ. Вы проверили? > Вы проверили остальные пункты о которых я вас спросил?Потому что у него first.cgi: #!/usr/bin/perl print "Content-type: text/html\n\n"; print "Hello, World."; Он видимо даже не удосужился проверить простой cgi скрипт: #!/bin/sh echo "Content-type: text/html" echo echo "Today is " date - gt оверквотинг удален bin shecho Content-type text html echoecho Today i, jonny23 (ok), 12:00 , 02-Июн-15 (43)
>[оверквотинг удален] > first.cgi: > #!/usr/bin/perl > print "Content-type: text/html\n\n"; > print "Hello, World."; > Он видимо даже не удосужился проверить простой cgi скрипт: > #!/bin/sh > echo "Content-type: text/html" > echo > echo "Today is " > date #!/bin/sh echo "Content-type: text/html" echo echo "Today is " date сделано. Выдаёт исходный текст, как и с предыдущей версией.
- Я поставил апач 2 4Соответсвтенно, usr local apache2 cgi-bin поменялся на var , jonny23 (ok), 11:42 , 02-Июн-15 (41)
>> 2) ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" > Вы на этот алиас прописали в конфиге разрешение выполнения скриптов? > Раньше он у вас был другой: > <Directory "/usr/local/apache2/cgi-bin"> > AllowOverride All > Options ExecCGI > Order allow,deny > Allow from all > </Directory> Я поставил апач 2.4 Соответсвтенно, /usr/local/apache2/cgi-bin поменялся на /var/www/cgi-bin/. > В конфиге присутствует строка > LoadModule cgi_module modules/mod_cgi.so > ? > Если ее там нет- то механизм cgi просто не задействован. Механизм modperl > как выше выяснилось - не был задействован. Если добавляю эту строку, то [Tue Jun 02 11:19:15.923296 2015] [so:warn] [pid 4642] AH01574: module cgi_module is already loaded, skipping > попробуйте запустить свой скрипт в консоли.. он вообще работает? > посмотрите логи system и messages Скрипт работает с консоли. > даже если ваш скрипт показывается текстом а не выполняется- в логах апача > обязан появиться сигнал об обращении к нему- с ошибкой или нет > - но обязан. Ну нет его там, хот расшибись. И я подозреваю, что именно тут где то собака и порылась. Но в чём проблема пока не понимаю. > вы уверены что ваш апачь- действительно ЭТОТ апач? он точно воспринял ЭТОТ > конфиг? > Может вы правите не тот конфиг? Он ест этот конфиг при перезапуске, т.к. выдаёт предупреждения при откомменчивании - закомменчивании типа [Tue Jun 02 11:19:15.923296 2015] [so:warn] [pid 4642] AH01574: module cgi_module is already loaded, skipping [Tue Jun 02 11:19:15.923384 2015] [so:warn] [pid 4642] AH01574: module perl_module is already loaded, skipping > Может у вас уже чтото висит на 80 порту? > Может ваш сервер кладет логи в другое место вообще а те что > вы смотрите - от чегото иного?
опять же, в error_log он фиксирует все перезапуски httpd. > убейте все процессы слушающие 80 порт. Как это можно сделать? > запустите апач в консоли а не демоном, указав ему конкретный конфигурационный файл Судя по реакции на закомменчивания - откомменчивания, он этот конфиг воспринимает. > воткните SetHandler cgi-script прямо в директорию, вот так: > <Directory "/usr/local/apache2/cgi-bin"> > SetHandler cgi-script > AllowOverride All > Options ExecCGI > Order allow,deny > Allow from all > </Directory> > Еще раз прочтите http://httpd.apache.org/docs/2.4/howto/cgi.html - в конфиге апача есть строкиInclude блаблаблаIncludeOptional блаблаблавот эти вот, Square (ok), 12:01 , 02-Июн-15 (44)
> Ну нет его там, хот расшибись. И я подозреваю, что именно тут > где то собака и порылась. > Но в чём проблема пока не понимаю.в конфиге апача есть строки Include блаблабла IncludeOptional блаблабла вот эти вот блаблабла - это тоже конфиги апача. Возможно ваша конечная конфигурация не совсем такая как вы ее себе представляете. >> убейте все процессы слушающие 80 порт. > Как это можно сделать? netstat -tlnp|grep 80 покажет какой процесс висит на порту. запускать под рутом
- gt оверквотинг удален Directory usr local apache2 cgi-bin AddHandler , eRIC (ok), 08:09 , 02-Июн-15 (33)
>[оверквотинг удален] > <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."; <Directory "/usr/local/apache2/cgi-bin"> AddHandler cgi-script .cgi .pl AllowOverride All Options +ExecCGI Order allow,deny Allow from all </Directory> пробуйте
- gt оверквотинг удален Не работает Мне кажется корень проблемы в том, что в лог, jonny23 (ok), 09:45 , 02-Июн-15 (34)
>[оверквотинг удален] >> print "Content-type: text/html\n\n"; >> print "Hello, World."; > <Directory "/usr/local/apache2/cgi-bin"> > AddHandler cgi-script .cgi .pl > AllowOverride All > Options +ExecCGI > Order allow,deny > Allow from all > </Directory> > пробуйте Не работает. Мне кажется корень проблемы в том, что в логах он не показывает даже попытку открыть файл в браузере. В чём здесь может быть дело? И это при том, что он открывает в браузере localhost радостным криком "It works!".
- gt оверквотинг удален в access логое есть записи что подключались с localhost , eRIC (ok), 10:23 , 02-Июн-15 (35)
>[оверквотинг удален] >> Order allow,deny >> Allow from all >> </Directory> >> пробуйте > Не работает. > Мне кажется корень проблемы в том, что в логах он не показывает > даже попытку открыть файл в браузере. > В чём здесь может быть дело? > И это при том, что он открывает в браузере localhost радостным криком > "It works!".в access логое есть записи что подключались с localhost? тут у вас каша небольшая получилась. сперва у вас апач 2.2 был, теперь у вас апач 2.4. если все верно настроено то все должно работать. в /usr/local/apache2/htdocs/ index.htm файл отредактируйте и потом посмотрите еще раз в браузере изменения отображаются или нет
- gt оверквотинг удален да, я переставил апач с 2 2 на 2 4 Слелал новый var www, jonny23 (ok), 11:24 , 02-Июн-15 (39)
>[оверквотинг удален] >> даже попытку открыть файл в браузере. >> В чём здесь может быть дело? >> И это при том, что он открывает в браузере localhost радостным криком >> "It works!". > в access логое есть записи что подключались с localhost? > тут у вас каша небольшая получилась. сперва у вас апач 2.2 был, > теперь у вас апач 2.4. если все верно настроено то все > должно работать. > в /usr/local/apache2/htdocs/ index.htm файл отредактируйте и потом посмотрите еще раз > в браузере изменения отображаются или нет да, я переставил апач с 2.2 на 2.4. Слелал новый /var/www/html/index.html Страница открывается в браузере нормально. Но никаких следов ни в access_log, ни в error_logs нет: [root@localhost html]# tail /var/log/httpd/access_log 127.0.0.1 - - [01/Jun/2015:22:25:12 +0300] "GET /favicon.ico HTTP/1.1" 404 209 "-" "Mozilla/5.0 (X11; Linux i686; rv:32.0) Gecko/20100101 Firefox/32.0" [root@localhost html]# tail /var/log/httpd/error_log [Tue Jun 02 11:19:11.374988 2015] [lbmethod_heartbeat:notice] [pid 4633] AH02282: No slotmem from mod_heartmonitor [Tue Jun 02 11:19:11.376494 2015] [mpm_prefork:notice] [pid 4633] AH00163: Apache/2.4.10 (Fedora) mod_perl/2.0.9-dev Perl/v5.18.4 configured -- resuming normal operations [Tue Jun 02 11:19:11.376517 2015] [core:notice] [pid 4633] AH00094: Command line: 'httpd' [Tue Jun 02 11:19:15.941830 2015] [mpm_prefork:notice] [pid 4633] AH00173: SIGHUP received. Attempting to restart [Tue Jun 02 11:19:15.958260 2015] [so:warn] [pid 4633] AH01574: module cgi_module is already loaded, skipping [Tue Jun 02 11:19:15.958293 2015] [so:warn] [pid 4633] AH01574: module perl_module is already loaded, skipping [Tue Jun 02 11:19:15.965505 2015] [auth_digest:notice] [pid 4633] AH01757: generating secret for digest authentication ... [Tue Jun 02 11:19:15.966394 2015] [lbmethod_heartbeat:notice] [pid 4633] AH02282: No slotmem from mod_heartmonitor [Tue Jun 02 11:19:15.967649 2015] [mpm_prefork:notice] [pid 4633] AH00163: Apache/2.4.10 (Fedora) mod_perl/2.0.9-dev Perl/v5.18.4 configured -- resuming normal operations [Tue Jun 02 11:19:15.967667 2015] [core:notice] [pid 4633] AH00094: Command line: 'httpd'
- В приведенном вами выше конфиге - логи находятся совсем в другом местеErrorLog , Square (ok), 11:39 , 02-Июн-15 (40)
> Но никаких следов ни в access_log, ни в error_logs нет: > [root@localhost html]# tail /var/log/httpd/access_log > [root@localhost html]# tail /var/log/httpd/error_log В приведенном вами выше конфиге - логи находятся совсем в другом месте ErrorLog "logs/error_log" CustomLog "logs/access_log" common
- После установки апача 2 4 httpd conf такой ServerRoot etc httpd Listen 80LoadM, jonny23 (ok), 11:55 , 02-Июн-15 (42)
>> Но никаких следов ни в access_log, ни в error_logs нет: >> [root@localhost html]# tail /var/log/httpd/access_log >> [root@localhost html]# tail /var/log/httpd/error_log > В приведенном вами выше конфиге - логи находятся совсем в другом месте > ErrorLog "logs/error_log" > CustomLog "logs/access_log" common После установки апача 2.4 httpd.conf такой: ServerRoot "/etc/httpd" Listen 80 LoadModule cgi_module modules/mod_cgi.so LoadModule perl_module modules/mod_perl.so Include conf.modules.d/*.conf User apache Group apache ServerAdmin root@localhost <Directory /> AllowOverride All Require all denied </Directory> DocumentRoot "/var/www/html" <Directory "/var/www"> AllowOverride All Require all granted </Directory> <Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> <IfModule dir_module> DirectoryIndex index.html </IfModule> <Files ".ht*"> Require all denied </Files> 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" combined </IfModule> <IfModule alias_module> ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" </IfModule> AddHandler cgi-script .cgi <Directory "/var/www/cgi-bin"> AddHandler cgi-script .cgi .pl SetHandler cgi-script AllowOverride All Options ExecCGI Order allow,deny Allow from all </Directory> <IfModule mime_module> TypesConfig /etc/mime.types AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddHandler cgi-script .cgi AddType text/html .shtml AddOutputFilter INCLUDES .shtml </IfModule> AddDefaultCharset UTF-8 <IfModule mime_magic_module> MIMEMagicFile conf/magic </IfModule> EnableSendfile on IncludeOptional conf.d/*.conf error_log фиксирует все перезапуски httpd.
- Конфиг который вы показываете- не родной конфиг от 2 4сохраните где нибудь свои , Square (ok), 12:20 , 02-Июн-15 (46) +1
> После установки апача 2.4 httpd.conf такой: Конфиг который вы показываете- не родной конфиг от 2.4 сохраните где нибудь свои конфиги апача. сотрите все конфиги апача вместе с подкаталогами. удалите апачь полностью. поставьте апач заново. убедитесь что новый, дефолтный конфиг апача встал на свое место. настройте cgi по мануалу http://httpd.apache.org/docs/2.4/howto/cgi.html перезапустите апачь. запросите главную страничку своего сайта проверьте что в логах есть записи об обращении к файлам альтернативный вариант: укажите путь к логам полным путем: ErrorLog "/var/log/my_apache_error_log" CustomLog "/var/log/my_apache_access_log" common обязательно чтобы файлы назывались иначе чем дефолтные. Теперь все сообщения должны попадать в эти логи. Если это будет не так- вернуться к исходному варианту с переустановкой и полным удалением старого конфига.
- gt оверквотинг удален Берем в руки strace , запускаем apache и медленно медлен, ford1813 (ok), 10:55 , 02-Июн-15 (38)
>[оверквотинг удален] >> Order allow,deny >> Allow from all >> </Directory> >> пробуйте > Не работает. > Мне кажется корень проблемы в том, что в логах он не показывает > даже попытку открыть файл в браузере. > В чём здесь может быть дело? > И это при том, что он открывает в браузере localhost радостным криком > "It works!".Берем в руки strace , запускаем apache и медленно медленно читаем выхлоп.
- gt оверквотинг удален Выхлоп немеренных размеров А на что там нужно обратить в, jonny23 (ok), 12:16 , 02-Июн-15 (45)
>[оверквотинг удален] >>> Allow from all >>> </Directory> >>> пробуйте >> Не работает. >> Мне кажется корень проблемы в том, что в логах он не показывает >> даже попытку открыть файл в браузере. >> В чём здесь может быть дело? >> И это при том, что он открывает в браузере localhost радостным криком >> "It works!". > Берем в руки strace , запускаем apache и медленно медленно читаем выхлоп. Выхлоп немеренных размеров. А на что там нужно обратить внимание?
- gt оверквотинг удален вызов open и коды возврата внимательно смотрим пути, fail (?), 13:07 , 02-Июн-15 (47)
>[оверквотинг удален] >>>> пробуйте >>> Не работает. >>> Мне кажется корень проблемы в том, что в логах он не показывает >>> даже попытку открыть файл в браузере. >>> В чём здесь может быть дело? >>> И это при том, что он открывает в браузере localhost радостным криком >>> "It works!". >> Берем в руки strace , запускаем apache и медленно медленно читаем выхлоп. > Выхлоп немеренных размеров. > А на что там нужно обратить внимание?вызов open(...) и коды возврата внимательно смотрим пути - все шо каacецца *.conf & *log делаем орг.выводы ... P.S.: из хoмяка рута strace -ff -F -o .test.log { тут скрипт запуска apache или и бинарника }
- gt оверквотинг удален А теперь, внимание, правильный ответ Если сослаться на c, jonny23 (ok), 16:43 , 02-Июн-15 (50)
>[оверквотинг удален] > <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."; А теперь, внимание, правильный ответ. Если сослаться на cgi-файл из index.html, и через него, соответственно, открыть, то он работает корректно. А если открывать cgi-файл прямо из браузера, то нет. Здесь есть волшебники, у которых cgi файл исполняется, будучи открытым в браузере напрямую?
- да так и должно работать , Square (ok), 16:45 , 02-Июн-15 (51)
> Здесь есть волшебники, у которых cgi файл исполняется, будучи открытым в браузере > напрямую?да. так и должно работать.
- А как вы это сделали Браузер запрашивает файлбраузер парсит файлбраузер запрашив, Square (ok), 17:11 , 02-Июн-15 (52) +1
> Если сослаться на cgi-файл из index.html, и через него, соответственно, открыть, то > он работает корректно.А как вы это сделали? Браузер запрашивает файл браузер парсит файл браузер запрашивает все найденные ссылки НАПРЯМУЮ, в том числе и cgi. исключение из этого алгоритма составляет включение cgi скрипта как ssi в этом случае сам сервер парсит html файл, и делает вызов cgi > Здесь есть волшебники, у которых cgi файл исполняется, будучи открытым в браузере > напрямую? так и должно работать.
- бля, есть да прости меня модератор , можете считать меня таковым пруф http , Pahanivo (ok), 21:21 , 02-Июн-15 (55) +1
> Здесь есть волшебники, у которых cgi файл исполняется, будучи открытым в браузере > напрямую?бля, есть (да прости меня модератор!), можете считать меня таковым :) пруф http://opennettest.inets.ru/fuckenmagic.pl сам скрипт
#! /usr/local/bin/perl -w print "Content-type:text/html\n\n"; print "<html><head><title>HELLO</title></head><body>"; print "Do u want some street magic? "; print "Current unix time" . time; print "</body></html>\n";
полный конфиг (за искл. виртуальных хостов).
Listen 80 LoadModule authn_file_module modules/mod_authn_file.so LoadModule authn_default_module modules/mod_authn_default.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule authz_default_module modules/mod_authz_default.so LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule auth_digest_module modules/mod_auth_digest.so LoadModule ext_filter_module modules/mod_ext_filter.so LoadModule include_module modules/mod_include.so LoadModule filter_module modules/mod_filter.so LoadModule log_config_module modules/mod_log_config.so LoadModule log_forensic_module modules/mod_log_forensic.so LoadModule logio_module modules/mod_logio.so LoadModule env_module modules/mod_env.so LoadModule mime_magic_module modules/mod_mime_magic.so LoadModule ident_module modules/mod_ident.so LoadModule mime_module modules/mod_mime.so LoadModule status_module modules/mod_status.so LoadModule cgi_module modules/mod_cgi.so LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule dir_module modules/mod_dir.so LoadModule alias_module modules/mod_alias.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule php5_module modules/libphp5.so <IfModule !mpm_netware_module> <IfModule !mpm_winnt_module> User www Group www </IfModule> </IfModule> ServerAdmin you@example.com DocumentRoot "/usr/local/apache2/htdocs" <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> <Directory "/usr/local/apache2/htdocs"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> <IfModule dir_module> DirectoryIndex index.html index.htm index.php </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> </IfModule> <IfModule cgid_module> </IfModule> <Directory "/usr/local/apache2/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> DefaultType text/plain <IfModule mime_module> AddType application/x-httpd-php .php TypesConfig /usr/local/etc/apache2/mime.types AddType application/x-compress .Z AddType application/x-gzip .gz .tgz </IfModule> <IfModule !mpm_netware_module> PidFile "logs/httpd.pid" </IfModule> <IfModule !mpm_winnt_module> <IfModule !mpm_netware_module> LockFile "logs/accept.lock" </IfModule> </IfModule> <IfModule mpm_prefork_module> StartServers 1 MinSpareServers 2 MaxSpareServers 3 MaxClients 100 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_worker_module> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_beos_module> StartThreads 10 MaxClients 50 MaxRequestsPerThread 10000 </IfModule> <IfModule mpm_netware_module> ThreadStackSize 65536 StartThreads 250 MinSpareThreads 25 MaxSpareThreads 250 MaxThreads 1000 MaxRequestsPerChild 0 MaxMemFree 100 </IfModule> <IfModule mpm_mpmt_os2_module> StartServers 2 MinSpareThreads 5 MaxSpareThreads 10 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_winnt_module> ThreadsPerChild 150 MaxRequestsPerChild 0 </IfModule> NameVirtualHost *:80 <VirtualHost *:80> ServerName opennettest.inets.ru ServerAdmin nobody@inets.ru DocumentRoot /path/www/opennet/htdocs ErrorLog /path/www/opennet/logs/error.log CustomLog /path/www/opennet/logs/access.log combinedio ScriptLog /path/www/opennet/logs/script.log <Directory "/path/www/opennet"> <Files *.pl> SetHandler cgi-script </Files> AllowOverride AuthConfig FileInfo Indexes Limit Options +ExecCGI -FollowSymLinks -Includes -IncludesNOEXEC -Indexes -MultiViews -SymLinksIfOwnerMatch Order Allow,Deny Allow from All </Directory> </VirtualHost> <IfModule ssl_module> SSLRandomSeed startup builtin SSLRandomSeed connect builtin </IfModule>
FreeBSD ./httpd -v Server version: Apache/2.2.14 (Unix) ну и логи 185.42.145.200 - - [02/Jun/2015:23:06:24 +0500] "GET /fuckenmagic.pl HTTP/1.1" 200 203 "-" "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36" 375 502
- - Знатоки современной науки, приблизились ли вы к разгадке тайны как робот ходи, Square (ok), 22:02 , 02-Июн-15 (56)
>> Здесь есть волшебники, у которых cgi файл исполняется, будучи открытым в браузере >> напрямую? > бля, есть (да прости меня модератор!), можете считать меня таковым :) > пруф http://opennettest.inets.ru/fuckenmagic.pl " - Знатоки современной науки, приблизились ли вы к разгадке тайны как робот ходит и говорит? - Да, идиот! Коммутационная схема на обратной стороне твоей крышки!!! " (с)Футурама
- gt оверквотинг удален Все кончено У нас тут целая интрига в ожидании , ford1813 (ok), 23:20 , 03-Июн-15 (59)
>[оверквотинг удален] >> first.cgi: >> #!/usr/bin/perl >> print "Content-type: text/html\n\n"; >> print "Hello, World."; > А теперь, внимание, правильный ответ. > Если сослаться на cgi-файл из index.html, и через него, соответственно, открыть, то > он работает корректно. > А если открывать cgi-файл прямо из браузера, то нет. > Здесь есть волшебники, у которых cgi файл исполняется, будучи открытым в браузере > напрямую?Все кончено? У нас тут целая интрига в ожидании...
|