Автор Тема: FastCGI  (Прочитано 4222 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Kipter

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
FastCGI
« : 15 Сентября 2005, 03:31:30 »
Пиплы плиз помогите новичку в данной технологии...

Вот скрипт:
#!/usr/bin/perl

use CGI;
use FCGI;


$CGI = new CGI;


while(FCGI::accept() >= 0)  {

 print $CGI->header(-expires=>\'now\');

 $value = $CGI->param(\'value\');

 print "Value: $value
\\n";
}

Почему я не получаю значение $value?
Если использовать без FastCGI то все пашет!

и еще 1 вопрос... Я поставил FastCGI, прикрутил к апачу так сказать его... и поставл чтобы фаилы .fpl запускались через FastCGI

так вот как сделать так, что бы фаилы .pl могли запусаться и в обычном режиме без FastCGI и с режимом FastCGI

AddHandler fastcgi-script .pl - так не пойдет... перестают работать скрипты в которых нет FastCGI

Оффлайн AnnA

  • Фанатка форума
  • Старожил
  • ****
  • Сообщений: 263
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
FastCGI
« Ответ #1 : 15 Сентября 2005, 11:57:45 »
а вы воспользуйтесь поиском по этому форуму. ;) тут есть ответ на ваш вопрос и еще много чего интересного
пока-пока. :)

Оффлайн Kipter

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
FastCGI
« Ответ #2 : 15 Сентября 2005, 12:56:23 »
так, поискал посатрел да действительно кое что есть.. и некоторые вопросы отпали и появились новые млин!

Только ПЛЗ помогите, по ahee я уже поискал такого на форуме нет да и в доках вроде тоже =(

1) FastCgiServer /путь к скрипту(полный!)/script.fcgi -listen-queue-depth 50 -processes 2 -idle-timeout 300 -flush

зачем мне при старте апача запускать свой script.fcgi? Что это дает?
Ведь например http://localhost/cgi-bin/scrip.fcgi тоже его запустит и будет все нор работать...

2) Как сделать такую фичу: в зависимости от случая и события (наприер от времени, от запроса пользователя и т д) один и тот же скрипт допустим test.pl мог бы запускаться и как с FastCGI так и без него?
Пример:
#!/usr/bin/perl

use CGI;
use FCGI;
$CGI = new CGI;

$tipstart = $CGI->param(\'tipstart\');
if($tipstart eq "nofast") {
 &Main();
}
else {
 while(FCGI::accept() >= 0){ &Main(); }
}

Я понимаю что FCGI потом будет весеть в памяти и еу по барабану что будет позже ему указано в типе tipstart но вот чисто для 1 запуска указать тип то можно иль нет?
-> в чем у меня проблема с этим... почему то не стартую простые скрипты pl если не подрубить FCGI к ним...

Оффлайн AnnA

  • Фанатка форума
  • Старожил
  • ****
  • Сообщений: 263
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
FastCGI
« Ответ #3 : 15 Сентября 2005, 14:43:08 »
в настройках сервера пропишите для разных расширений свои обработчики:

AddHandler fastcgi-script .fcgi
AddHandler cgi-script .cgi .pl
 
fcgi будут работать, как FCGI. т.е. компилироваться и висеть в памяти  (до останова/перезагрузки веб-сервера)
а .cgi .pl - будут работать, как обычные скрипты. т.е. при каждои вызове - компилироваться по новому
пока-пока. :)

Оффлайн Kipter

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
FastCGI
« Ответ #4 : 16 Сентября 2005, 18:54:45 »
AnnA
нее! в том то и проблема!

Мне нужно чтобы 1 скрипт мог быть запущен как с FastCGI так и без FastCGI! например test.pl чтобы он мог быть запущен и так и так...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
FastCGI
« Ответ #5 : 16 Сентября 2005, 19:42:34 »
Создай симлинк.
man ln
The documentations is your friend

Оффлайн Kipter

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 19
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
FastCGI
« Ответ #6 : 16 Сентября 2005, 23:01:37 »
Цитировать
Создай симлинк.
man ln


Мда, меня не поняи... вообщем есть 1 проект.
К которому подключаются массу модулей.
Проект написан на перле.

его частенько приходится переносить на разные компы, включая и те что на Win патформе.

Так вот работать он должен везде одинаково, но на некоторых машинах очень производительно, а FastCGI для такой цели очень даже подходит!
Но не везде есть FastCGI и не везде *nix платформа.

Ну так вот допустим основной скриптик называется index.pl к нему прикручиваются библиотеки, доп фаилы... и т д
И в зависимости например от строчке в фаиле conf.pl этот скрипт должен стартануть с FastCGI или без FastCGI!

conf.pl
$conf{\'FastCGI\'} = "no"; или $conf{\'FastCGI\'} = "yes";

Если сделать тобы все фаилы .pl этим модулем стартавали то скрипты которым не нужен FastCGI не будут работать =(

Конечно можете дать совет сделать 2 фаила index.pl и index.fpl где есть или нету FastCGI, но это очень плохая идея для меня которую придеся делать только уж в без выходном случае =(

А вопрос звучит так: Можно ли настроить FastCGI так, чтобы она не мешала обычным скриптам .pl которым не нужен FastCGI, и одновременно работала бы с фаилами .pl которым нужен FastCGI.
И возможна ли така настройка со стороны Perl скрипта?

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28