Apache+php4 + php5 fastCGI

Alexandre

PHPПенсионер
Apache+php4 + php5 fastCGI

добавил в конфиг

AddType phpscript .php5

AddHandler phpscript .php5
Action phpscript /usr/ports/lang/php5/work/php-5.1.2/php5/bin/php

что еще не хватает, или что не так, чтоб запустить PHP5 as CGI ?
 

Alexandre

PHPПенсионер
так CGI или fastCGI?
fastCGI

-~{}~ 13.07.06 14:06:

странные вещи, убрал все добавленные директивы, а вот на запрос http://prodaction/info.php6
отзывается на незарегистрированное расширение (при наличии info.php6)
т.е. воспринимает его как расширение .php

-~{}~ 21.07.06 15:20:

не получается запустить php-fcgi FreeBSD
делаю так
компилю php из порта /usr/ports/www/php5-cgi
Код:
./configure --with-curl --with-inifile --enable-gd-native-ttf --with-pdo-pgsql --with-pgsql --without-pear --with-xsl --exec-prefix=/opt/php-cgi  --enable-fastcgi  
--without-apache
для запуска использую /usr/local/bin/spawn-fcgi http://www.lighttpd.net/documentation/fastcgi.html

запускаю скрипт и нет процессов.

скрипт запуска
Код:
#ABSOLUTE paath  to the spawn-fcgi binary
SPAWNFCGI="/usr/local/bin/spawn-fcgi"
## ABSOLUTE path to the PHP binary
FCGIPROGRAM="/opt/php-cgi/bin/php"

## bind to tcp-port on localhost
FCGIPORT="1026"

## bind to unix domain socket
# FCGISOCKET="/tmp/php.sock"     ????? нет у меня такого файла

## number of PHP childs to spawn
PHP_FCGI_CHILDREN=10

## number of request server by a single php-process until
## is will be restarted
PHP_FCGI_MAX_REQUESTS=1000

## IP adresses where PHP should access server connections
## from
FCGI_WEB_SERVER_ADDRS="127.0.0.1,192.168.0.32"

# allowed environment variables sperated by spaces
ALLOWED_ENV="ORACLE_HOME PATH USER"

## if this script is run as root switch to the following user
USERID=www
GROUPID=www
подскажите что не так????

-~{}~ 21.07.06 15:34:

вот что в логе messages
Jul 21 13:20:43 prodaction kernel: pid 74285 (php), uid 0: exited on signal 6 (core dumped)
Jul 21 13:20:54 prodaction kernel: pid 74286 (php), uid 0: exited on signal 6 (core dumped)
Jul 21 13:21:57 prodaction kernel: pid 74290 (php), uid 0: exited on signal 6 (core dumped)
очевидно не правильно собран PHP?

-~{}~ 24.07.06 10:09:

при инсталлировании из портов FreeBSD говорит
Код:
# make install
===>  Installing for php5-5.1.4

===>  php5-5.1.4 conflicts with installed package(s):
      php4-4.4.2_1

      They install files into the same place.
      Please remove them first with pkg_delete(1).
*** Error code 1
воссстановить из источников?

-~{}~ 24.07.06 10:32:

повторил весь процесс инсталляции на обнавленных портах, не запускается как fcgi

-~{}~ 24.07.06 10:47:

когда я его запускаю в командном режиме, то он пишет
Код:
--PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20050922/calendar.so' - Cannot open "/usr/local/lib/php/20050922/calendar.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20050922/crack.so' - Cannot open "/usr/local/lib/php/20050922/crack.so" in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20050922/ctype.so' - Cannot open "/usr/local/lib/php/20050922/ctype.so" in Unknown on line 0
without-pear --with-xsl --without-apache
и т.д...

вопрос 1 - в командном режиме он и дожен запускаться или он не находит php.ini

вопрос 2 - куда мне определить php.ini, так чтоб разделить php.ini для пхп4 и 5. Мне кажетсмя что причина в этом
 

Paxan

Новичёк
вопрос 1 - в командном режиме он и дожен запускаться или он не находит php.ini
должен. php.ini находит, т.к. пытается загрузить экстеншены

вопрос 2 - куда мне определить php.ini, так чтоб разделить php.ini для пхп4 и 5. Мне кажетсмя что причина в этом
переменная окружения - PHPRC
 

Alexandre

PHPПенсионер
Paxan
если использовать переменную окружения, то задавая ее для пхп4 мы задаем ее для пхп5???

-~{}~ 24.07.06 16:45:

должен. php.ini находит, т.к. пытается загрузить экстеншены
да, находит но для пхп4, для пхп5 нет ни каких внешних экстеншенов

-~{}~ 24.07.06 17:25:

запускаю с
Код:
#!/bin/bash

#ABSOLUTE path to the PHP binary
PHPFCGI="/opt/bin/php-fcgi/bin/php-cgi"

## tcp-port to bind on
FCGIPORT="9000"

## IP to bind on
FCGIADDR="127.0.0.1"

## number of PHP children to spawn
PHP_FCGI_CHILDREN=5

## number of request before php-process will be restarted
PHP_FCGI_MAX_REQUESTS=1000

# allowed environment variables sperated by spaces
ALLOWED_ENV="ORACLE_HOME PATH USER"

## if this script is run as root switch to the following user
USERID=akalend 

################## no config below this line

if test x$PHP_FCGI_CHILDREN = x; then
  PHP_FCGI_CHILDREN=5
fi

ALLOWED_ENV="$ALLOWED_ENV PHP_FCGI_CHILDREN"
ALLOWED_ENV="$ALLOWED_ENV PHP_FCGI_MAX_REQUESTS"
ALLOWED_ENV="$ALLOWED_ENV FCGI_WEB_SERVER_ADDRS"

if test x$UID = x0; then
  EX="/bin/su -m -c \"$PHPFCGI -q -b  $FCGIADDR:$FCGIPORT\" $USERID"
else
  EX="$PHPFCGI -b $FCGIADDR:$FCGIPORT"
fi

echo $EX

# copy the allowed environment variables
E=

for i in $ALLOWED_ENV; do
  E="$E $i=${!i}"
done

# clean environment and set up a new one
nohup env - $E sh -c "$EX" &> /dev/null &
502 Bad Gateway
 
Сверху