Master-X
Форум | Новости | Статьи
Главная » Форум » CJs » 
Тема: Виртуальный инклуд AT3 на nginx
цитата
22/04/10 в 14:22
 Alian
Как сделать именно virtual инкулд верный на Nginx, апача нет вообще.
<?php virtual ("/cgi-bin/at3/in.cgi"); ?>
Ведь это не совсем инклуд это своего рода запрос.
цитата
22/04/10 в 19:07
 Stek
<!--# include virtual="/cgi-bin/at3/in.cgi" -->
Если не ошибаюсь так, только должен быть SSI включен.
цитата
22/04/10 в 19:12
 Alian
ну ssi не сильно хочеться юзать
цитата
22/04/10 в 19:16
 Stek
А в чем причины ?
цитата
22/04/10 в 19:23
 Alian
дофига php инклудов других придется в морде многое что переделывать, по чти не реально это сделать там море всего, на ssi садиться бред просто.

Последний раз редактировалось: Alian (22/04/10 в 19:26), всего редактировалось 1 раз
цитата
22/04/10 в 19:25
 Alian
Код:
$CGISCRIPT="/full/path/cgi-bin/atx/in.cgi";
putenv('REQUEST_METHOD=GET');
if(isset($_SERVER['QUERY_STRING'])) putenv('QUERY_STRING='.$_SERVER['QUERY_STRING']);
if(isset($_SERVER['HTTP_USER_AGENT'])) putenv('HTTP_USER_AGENT='.$_SERVER['HTTP_USER_AGENT']);
if(isset($_SERVER['HTTP_VIA'])) putenv('HTTP_VIA='.$_SERVER['HTTP_VIA']);
if(isset($_SERVER['HTTP_CACHE_CONTROL'])) putenv('HTTP_CACHE_CONTROL='.$_SERVER['HTTP_CACHE_CONTROL']);
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) putenv('HTTP_X_FORWARDED_FOR='.$_SERVER['HTTP_X_FORWARDED_FOR']);
if(isset($_SERVER['HTTP_REFERER'])) putenv('HTTP_REFERER='.$_SERVER['HTTP_REFERER']);
if(isset($_SERVER['HTTP_COOKIE'])) putenv('HTTP_COOKIE='.$_SERVER['HTTP_COOKIE']);
putenv('REMOTE_ADDR='.$_SERVER['REMOTE_ADDR']);
unset($return_array);
exec($CGISCRIPT, $return_array, $return_val);
$firstline=array_shift($return_array);
echo implode($return_array,"\r\n");


Ну саппорт AT3 предложили такой вариант, типа один из пользователей юзает на ligghttp. Но это Nginx. Испробовал код я этот не считает оно ины.
цитата
11/05/10 в 18:11
 fish_ka_praha
<!--# include virtual="/cgi-bin/at3/in.cgi" -->
эта конструкция передает управления АПАЧУ на выполнение ин цги возвращает результат выполнения, так можно и пхп включать, но это по сути внутрений вызов апачевой функции. те на нгинксе это работать не будет и не должно
цитата
11/05/10 в 19:22
 Soft-Com

SSI СЕРВЕРУ а не апачу, а почти любой сервер умеет ssi
virtual() ничем не заменишь - это php-враппер для апача для замены SSI include (пробовали переписать для fast-cgi - х..ня получилась)
цитата
08/11/10 в 22:06
 XZ
Апну тему.
Ситуация та же, только кристал вместо at3 и отсутствует нежелание юзать ssi.
В результате этого инклюда
Цитата:
<!--# include virtual="/crtr/cgi/in.cgi?ssi=1&$QUERY_STRING" -->

в html тупо вставляется этот самый in.cgi в бинарном виде. Саппорт кристала сказал что in.cgi out.cgi написаны на Си, насколько я понимаю это включение должно выполнить их в шелле, а не инклюдить содержимое в вывод. nginx сам по себе это не умеет, вопрос в том что нужно поставить и прописать в его конфиге чтобы все работало как положено? Ставить бэкендом апач не предлагать, это самый простой выход которым воспользуюсь если вдруг не услышу других советов.
цитата
08/11/10 в 23:15
 Soft-Com
Раширение .cgi не передано на обработку fastcgi
цитата
08/11/10 в 23:27
 XZ

в конфиге нгинкса прописал по аналогии с .php
Код:
location ~ \.cgi$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_param  SCRIPT_FILENAME  /my/path/to$fastcgi_script_name;
    fastcgi_param  QUERY_STRING     $query_string;
    include        fastcgi_params;
}

ничего не изменилось. php обрабатывает на ура.
кинь сцылку на мануал если не затруднит.
цитата
08/11/10 в 23:38
 Soft-Com
http://wiki.nginx.org/NginxSimpleCGI
цитата
08/11/10 в 23:57
 color
ATL3 через ssi инклуд замечательно работает с nginx
цитата
08/11/10 в 23:58
 color
fish_ka_praha писал:
<!--# include virtual="/cgi-bin/at3/in.cgi" -->
эта конструкция передает управления АПАЧУ на выполнение ин цги возвращает результат выполнения, так можно и пхп включать, но это по сути внутрений вызов апачевой функции. те на нгинксе это работать не будет и не должно

путаете, ssi как раз прекрасно с nginx работает, а вот <?php virtual не работает т.к. эта функция есть только в пхп модуле для апача.
цитата
09/11/10 в 00:18
 XZ
color: тот вопрос уже обсудили, я тему поднял ибо просто нашел схожесть
цитата
09/11/10 в 00:41
 color
а, кристал вроде бы аналогично через ssi ставим - работает )
цитата
09/11/10 в 12:22
 Noobus Boobus
Нгинкс изначально не рассчитан на исполнение CGI, только FastCGI.
Так что ждите секса.
цитата
09/11/10 в 15:11
 XZ
Всем спасибо, заработало.
Noobus Boobus: секас был, отменный ))
цитата
10/11/10 в 01:04
 net666
Оффтопик: А при каких об'емах трафа Nginx начинает бытьт выгоднее инедейца ?
цитата
10/11/10 в 01:06
 color
Noobus Boobus писал:
Нгинкс изначально не рассчитан на исполнение CGI, только FastCGI.
Так что ждите секса.

через враппер все отлично работает. также как и пхп.
цитата
10/11/10 в 12:34
 Noobus Boobus
Согласен %) После секса отлично работает %)


Эта страница в полной версии