fcgi apache

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.

Модераторы: SLEDopit, Модераторы разделов

Аватара пользователя
nuclear17
Сообщения: 117
ОС: linux/mac/win

fcgi apache

Сообщение nuclear17 »

Пытаюсь настроить fast-cgi в связке с апачем и перлом. Настраиваю по http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html . При обращению к скрипту ничего кроме 503 ошибки не получаю.

Скрипт:

Код: Выделить всё

#!/usr/bin/perl
use CGI::Fast;
my $test=0;
while (my $q = CGI::Fast->new) {
print("Content-Type: text/plain\n\n");
foreach $var (sort(keys(%ENV))) {
$val = $ENV{$var};
$val =~ s|\n|\\n|g;
$val =~ s|"|\\"|g;
print "${var}=\"${val}\"\n";
}

$test++;
print $test;
}


Конфиг:

Код: Выделить всё

<Directory /home/*/public_html>
  AllowOverride All
<FilesMatch "\.fpl$">
SetHandler fcgid-script
Options +ExecCGI
Order allow,deny
Allow from all
</FilesMatch>
</Directory>


в чем может быть косяк?
Спасибо сказали:
Venegance
Сообщения: 119
ОС: Debian

Re: fcgi apache

Сообщение Venegance »

Добавляем в VirtualHost аккаунта:

Код: Выделить всё

<IfModule mod_fcgid.c>
  IPCCommTimeout              300
</IfModule>
<Directory /h/examplecom>
Options +ExecCGI +FollowSymlinks
AllowOverride All
AddHandler fcgid-script .php
FCGIWrapper /h/examplecom/cgi-bin/php-fcgi-wrapper .php
Order allow,deny
Allow from all
</Directory>

Содержимое php-fcgi-wrapper

Код: Выделить всё

#!/bin/sh
# Wrapper for PHP-fcgi
# This wrapper can be used to define settings before launching the PHP-fcgi binary.

# Define the path to php.ini. This defaults to /etc/phpX/cgi.
#export PHPRC=/var/www/fcgi-bin.d/php5-web01/phprc
export PHPRC=/etc/php5/cgi

# Define the number of PHP childs that will be launched. Leave undefined to let PHP decide.
# export PHP_FCGI_CHILDREN=4

# Maximum requests before a process is stopped and a new one is launched
# export PHP_FCGI_MAX_REQUESTS=4096

# Launch the PHP CGI binary
# This can be any other version of PHP which is compiled with FCGI support.
exec /usr/bin/php5-cgi

Код: Выделить всё

chown examplecom:examplecom /h/examplecom/cgi-bin/php-fcgi-wrapper
chmod 755 /h/examplecom/cgi-bin/php-fcgi-wrapper


Добавляем в конфиг Apache:

Код: Выделить всё

LoadModule fcgid_module /usr/lib/apache2/modules/mod_fcgid.so
<IfModule mod_fcgid.c>
DefaultMaxClassProcessCount 8
DefaultMinClassProcessCount 4
MaxProcessCount             8
IPCCommTimeout              90
IdleTimeout                 90
</IfModule>

Значения выбираются исходя из мощности сервера.
Спасибо сказали:
Аватара пользователя
nuclear17
Сообщения: 117
ОС: linux/mac/win

Re: fcgi apache

Сообщение nuclear17 »

спасибо. но косяк был в другом)
всеголишь надо было написать
#!/usr/bin/perl -wT
после этого все заработало

и права надо было выставить
Спасибо сказали:
Аватара пользователя
nuclear17
Сообщения: 117
ОС: linux/mac/win

Re: fcgi apache

Сообщение nuclear17 »

Вопрос номер 2 : как срубить процесс fcgi'я?
Спасибо сказали:
Venegance
Сообщения: 119
ОС: Debian

Re: fcgi apache

Сообщение Venegance »

killall php5-cgi
Спасибо сказали: