Jak --enable-dom bez ponownej kompilacji PHP?


9

Z wyjścia phpinfo(), --disable-domsą zawarte polecenie configure. Jak mogę to zmienić --enable-dombez ponownej kompilacji PHP?

Edycja : Używam Fedory 10. Używam PHP tego, który został z nią dostarczony.

Odpowiedzi:


12

Wystarczy zainstalować pakiet o nazwie php xml , który dostarcza php-DOM wsparcia .

Listę pobrań można znaleźć na stronie http://rpm.pbone.net/index.php3/stat/4/idpl/10503222/com/php-xml-5.2.6-5.i386.rpm.html

Dostosuj konfiguracje, aby faktycznie załadować moduły:

/etc/php.d/dom.ini
/etc/php.d/xmlreader.ini
/etc/php.d/xmlwriter.ini
/etc/php.d/xsl.ini

i uruchom ponownie apache.


Wygląda na to, że zainstalowanie php-xml rozwiązuje problem dompdf. Teraz tworzy plik pdf, ale błąd nadal występuje.
— Randell

edytuj swój post, dodając trochę wyników. Wyszczególnij otrzymany błąd.
— drAlberT

Czy jesteś pewien, że załadowałeś rozszerzenie do php.ini i zrestartowałeś też apache?
— drAlberT

Otrzymuję ten sam błąd, ale plik PDF jest teraz tworzony. Nie zmodyfikowałem jeszcze php.ini. Które rozszerzenie muszę załadować do php.ini?
— Randell

1
Dla każdego, kto zetknie się z tym i zainstaluje pakiet IUS php53, zainstalujesz php53-xml.
— Jon Haddad

3

Nie możesz - są to opcje czasu kompilacji.

Chyba, że ​​znajdziesz inną wstępnie skompilowaną dystrybucję PHP, która jest zgodna z twoją konfiguracją (której nie wyszczególniasz w swoim pytaniu).

O ile oczywiście funkcje, których szukasz, nie są zaimplementowane w inny sposób, powiedz zestaw funkcji w pliku skryptu php, który możesz include()umieścić w swoich skryptach.


2
Możesz po prostu wyszukać pakiet, który udostępnia go jako obiekt udostępniony. Każda nowoczesna dystrybucja ma taki pakiet dla dużej liczby rozszerzeń PHP.
— drAlberT

2

Zainstalowałem php-xml z YUM (CentOS)

sudo mniam zainstaluj php-xml

Uruchom ponownie Apache

usługa sudo httpd restart

Wszystko dziala


Zauważ, że jeśli masz zainstalowany PHP 5.3, może być konieczne użycie tego:sudo yum install php53-xml
— Matt Browne

W moim przypadku wystąpił również problem z php-commonniespełnieniem zależności (chyba niewłaściwa wersja?). Naprawiono to za pomocą następujących poleceń:$ rpm -e --nodeps php-common # warning: /etc/php.ini saved as /etc/php.ini.rpmsave $ yum install php53-xml # restore the original php.ini $ cp /etc/php.ini.rpmsave /etc/php.ini
— Matt Browne

0

możesz pobrać SRPM dla PHP. Zmień plik specyfikacji, tak aby miał --enable-dom, a następnie przerób RPM za pomocą narzędzi rpmbuild.

Zobacz tę witrynę jako przykład łatania i odbudowywania SRPM.

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.