Moduł PHP ładujący Apache - niezdefiniowany symbol: unixd_config


3

Konfiguruję nowy serwer WWW na RedHat 6.5.

Próbuję włączyć php5moduł w Apache 2.4.6 w następujący sposób:

LoadModule php5_module /usr/path/to/libphp5.so
AddType application/x-httpd-php .php

Gdy sprawdzam httpd.confplik za pomocą Apache, pojawia się następujący błąd dotyczący LoadModulewiersza:

Cannot load /usr/path/to/libphp5.so into server: /usr/path/to/libphp5.so: undefined symbol: unixd_config

Zastanawiam się, czy problem tkwi w tym, że mam zainstalowane dwie wersje PHP. Jedynym, którego powinien używać Apache, jest alias php55, jaka jest dla niego konfiguracja?

Odpowiedzi:


3

Interfejs API Apache zmieniono z 2.2 na 2.4, unixd_config został przemianowany na ap_unixd_config (patrz zmiany Api z 2.2 na 2.4 ). Potrzebujesz wersji modułu php kompatybilnej z Apache 2.4 lub pozostającej z Apache 2.2.


I gdzie mogę uzyskać dobrą wersję modułu?
Fractaliste

Na pewno odpowiednie wersje są dostępne w pakietach Red Hat, niestety nie mogę ci w tym pomóc (zawsze jestem z Debianem). Jeśli zainstalujesz standardowe pakiety, powinieneś być w porządku.
Zimmi

@Zimm Mam ten sam problem w debian7, php 5.6 i apache2.4.10, każdy wielokrotnie instalowany php i apache i moduł, ale wciąż ten sam problem. Czy możesz mi powiedzieć, jak to rozwiązać?
Nullpointer,

0

Wreszcie używam:

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>
PHPIniDir "/path/to/php/lib"

I buduję libphp5.sosam.


0

Prawidłowe podejście polega na zainstalowaniu następującego pakietu. Zamień php55 na żądaną wersję tutaj. Oprogramowanie jest pobierane z RH Software Collection. Ten pakiet zawiera moduł (często nazywany mod_php), który dodaje obsługę php do Apache 2.4

yum install rh-php55-php

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.