LINUX.ORG.RU

Apache2 + PHP5 = ?

 , ,


0

1

Нужна помощь. Собрал апач из сорцов с офф сайта. Апач запустил, попробовал тестовую страницу index.html в броузере зашел на localhost и все на ок заработало, но нужно к апачу еще присоединить PHP. Собираю

./configure --prefix=/usr/local/php5
make
make install
Далее во всех статьях пишут про создние симлинка на ./libs (папка в директории с сорцами, но у меня она почему-то пуста)/libphp5.so в папке apache/modules. Так вот собственно у меня эта папка ./libs пуста... И где искать libphp5.so я не знаю. Пробовал поиск.
updatedb 
locate libphp5.so
Ничего не находит. Что делать ума не приложу.

P.S. Апач в дире /usr/local/apache2



Последнее исправление: cetjs2 (всего исправлений: 2)

Посмотрите на флаги ./configure. Может быть, нужно руками включить ещё что-то, без чего модуль Apache не собирается.

И да, зачем собирать руками и с официального сайта?

AITap ★★★★★
()

емнип, нужно собирать ПХП с поддержкой апача то ли наоборот.

LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php

в конфиг апача.

ymuv ★★★★
()
Ответ на: комментарий от drBatty

Раскомментировал в самомо начале. Ды в флагах конфигурятинского скрипта смотрел

./configure --help
Вроде ничего не видно.. Мб, плохо смотрю. Сейчас еще посмотрю,
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
, все это уже я добавил в самом начале.

vikt3r
() автор топика
Ответ на: комментарий от ymuv

Может ПХП собрать с вот этой опцией?

--with-libdir=NAME      Look for libraries in .../NAME rather than .../lib
Вот, только я не уверен. Оно ли? Тут мне кажется либо указать на постороннюю папку с либами, либо на ./libs ?

vikt3r
() автор топика
Ответ на: комментарий от vikt3r

Вот в хелпе апача нашел интересные опции:

--enable-so
--with-module=module-type:module-file

vikt3r
() автор топика
Ответ на: комментарий от drBatty

Вообщем я хз, что делать, как делать? При рестарте апача мне выдает, что он не может найти modules/libphp5.so. Где взять этот гребанный libphp5.so я не знаю.

vikt3r
() автор топика
Ответ на: комментарий от vikt3r

О да! Я обожаю исходники! Я люблю компиляние из исходников :D Вот мой счастливый лог!

root@trolletop# make install
Installing PHP SAPI module:       apache2handler
/usr/local/apache2/build/instdso.sh SH_LIBTOOL='/usr/local/apache2/build/libtool' libphp5.la /usr/local/apache2/modules
/usr/local/apache2/build/libtool --mode=install cp libphp5.la /usr/local/apache2/modules/
cp .libs/libphp5.so /usr/local/apache2/modules/libphp5.so
cp .libs/libphp5.lai /usr/local/apache2/modules/libphp5.la
libtool: install: warning: remember to run `libtool --finish /Programs/php-5.4.4/libs'
chmod 755 /usr/local/apache2/modules/libphp5.so
[activating module `php5' in /usr/local/apache2/conf/httpd.conf]
Installing PHP CLI binary:        /usr/local/bin/
Installing PHP CLI man page:      /usr/local/php/man/man1/
Installing PHP CGI binary:        /usr/local/bin/
Installing build environment:     /usr/local/lib/php/build/
Installing header files:          /usr/local/include/php/
Installing helper programs:       /usr/local/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/lib/php/
[PEAR] Archive_Tar: upgrade to a newer version (1.3.7 is not newer than 1.3.7)
[PEAR] Console_Getopt: upgrade to a newer version (1.3.0 is not newer than 1.3.0)
[PEAR] Structures_Graph: upgrade to a newer version (1.0.4 is not newer than 1.0.4)
[PEAR] XML_Util: upgrade to a newer version (1.2.1 is not newer than 1.2.1)
[PEAR] PEAR: upgrade to a newer version (1.9.4 is not newer than 1.9.4)
/Programs/php-5.4.4/build/shtool install -c ext/phar/phar.phar /usr/local/bin
ln -s -f /usr/local/bin/phar.phar /usr/local/bin/phar
Installing PDO headers:          /usr/local/include/php/ext/pdo/

vikt3r
() автор топика
Ответ на: комментарий от vikt3r

Ой. Но тут всплыла еще проблемка...

httpd: Syntax error on line 53 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: undefined symbol: zend_parse_parameters
При старте апача.

vikt3r
() автор топика
Ответ на: комментарий от drBatty

Ребята, честно? Я сам до сих пор не понял, что было не так, но после пересборки апачей и ПХП у меня все отлично заработало... Странно.. На линуксфорумс.орг я нашел у человека аналогичную проблему, но он описал такие шаги: инсталяция bison, make distclean, configure, make, make install. Однако на первом шаге у меня все провалилось, так как бизон уже установлен, ну вообщем попробовал без всяких плюшек еще раз пересобрать апачи с ключем --enabled-so и префиксом /usr/local/apache2 и пхп с указанием apxs2 и префиксом /usr/local/php5. Сделал apachectl start (у меня есть симлинк в sbin) и все отлично запустилось!

Это ответ в другой теме. Я так и сделал. И все заработало!

vikt3r
() автор топика
Ответ на: комментарий от vikt3r

Ребята, честно? Я сам до сих пор не понял, что было не так, но после пересборки апачей и ПХП у меня все отлично заработало... Странно..

честно-честно.

1. ставим ОС

2. собираем апачь, он собирается, и берёт libphp5 из /usr/local/lib, там нету, ругается матерно.

3. что-то делаем, пересобираем, в процессе подтягиваем libphp. Собирается.

4. старая либа как была, так и остаётся

5. но apache пофиг, либы беруться из кеша, причём старые. Не работает

6....

7. наконец кеш обновляется, всё работает

8. до первого сбоя/обновление/просто так.

9 начинаем по новой.

drBatty ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.