как прикрутить расширение zip к интерпретатору php в виде cgi

ayrat9

Новичок
как прикрутить расширение zip к интерпретатору php в виде cgi

как прикрутить расширение zip к интерпретатору php в виде cgi-модуля? (сервер unix-овый)
 

ayrat9

Новичок
собрал заново php-модуль командой (версия php 5.2.11)

./configure --prefix=/home/uXXXXX/php \
--with-mysql=/usr/local --enable-ftp --enable-dbase \
--with-gdbm --with-ndbm --with-iconv=/usr/local \
--with-gd=/usr/local --enable-gd-native-ttf=/usr/local \
--with-jpeg-dir=/usr/local --with-png-dir=/usr/local \
--with-freetype-dir=/usr/local --with-ttf \
--with-zlib-dir=/usr --disable-posix \
--enable-force-cgi-redirect --enable-inline-optimization \
--with-pear --enable-zip --disable-debug

но через phpinfo() не видно этого zip нигде
да и в папке ext/ расширение zip не появилось

-~{}~ 13.12.09 18:57:

в php.ini также прописал extension=php_zip.dll
 

ayrat9

Новичок
ты дал ссылку, где написано

PHP 5.2.0 and later
Linux systems
In order to use these functions you must compile PHP with zip support by using the --enable-zip configure option.

зачем спрашивается...

-~{}~ 13.12.09 19:10:

extension=php_zip.dll

это лишнее, согласен
 

dimagolov

Новичок
если опцию ставил, но в phpinfo не появилось, то значит, что опция была проигнорирована в силу каких-то причин.

кстати, та команда, что ты привел, не пересобирает php, а только меняет конфигурацию сборки. еще нужно делать make && make install (то есть скомпилировать и установить скомпиленое), в отдельных случаях предварительно может понадобиться make clean (очистить временные директории компиляции)

-~{}~ 13.12.09 12:16:

да, и убедись, что у тебя в cgi вызывается тот php, который ты собираешь. это тоже, кстати, не очевидно :)
 

ayrat9

Новичок
команды make и make install конечно были даны
и php - исполняемый файл вместе с php.ini были скопированы в папку cgi-bin
 

dimagolov

Новичок
значит, что опция была проигнорирована в силу каких-то причин.
смотри что выводилось в итоге конфигурирования. у тебя вообще zlib-devel стоит? без этого то не соберется, даже если сама zlib в наличии.

в первую очередь --enable-zip должна появиться в phpinfo в разделе Configure Command

кроме того, про копирование в cgi-bin. вообще-то положение php.ini можно посмотреть в секции Loaded Configuration File

п.с. под линухом собирал в статике только 5.3.0 + fpm

-~{}~ 13.12.09 12:37:

п.п.с. про копирование. это вообще лишнее, есть ссылки (man ln)
 

ayrat9

Новичок
команда phpinfo() почему-то выводит информацию о php установленном на сервере, а не о моем вручную собранном php,
хотя в htacсess прописано
Action php-script /cgi-bin/php
AddHandler php-script .php .html .inc
 

dimagolov

Новичок
отож.
что-то подсказывает, что пора обращаться к поддержке хостера

а не наоборот должны быть директивы? в начале AddHandler, потом Action?
посмотри логи апача, если доступны
 

ayrat9

Новичок
СП мастерхоста тыкает меня носом сюда http://masterhost.ru/support/doc/php/#compile
завтра буду с ними ругаться

-~{}~ 13.12.09 19:57:

спасибо всё равно за помощь

-~{}~ 13.12.09 20:00:

да, кстати:

[u151063@be131 ~/php/bin]$ ./php -m
[PHP Modules]
ctype
date
dba
dbase
dom
filter
ftp
gd
hash
iconv
json
libxml
mysql
pcre
PDO
pdo_sqlite
Reflection
session
SimpleXML
SPL
SQLite
standard
tokenizer
xml
xmlreader
xmlwriter
zip
zlib

[Zend Modules]

-~{}~ 14.12.09 21:24:

как оказалось сборка была произведена корректно
трабл вскрылся при ковырянии файла .htaccess

вот эти строки в .htaccess:
Код:
 RemoveHandler .html
 AddType application/x-httpd-php .html
перекрывали

Код:
 Action php-script /cgi-bin/php
 AddHandler php-script .php .html .inc
и не передавали php-код зашитый в html-документах
на обработку php-интерпретатору в виде cgi-модуля

удалил их - и все заработало.

PS возможно этот случай окажется полезным уроком, для тех, кто использует php-код внутри web-документов
 
Сверху