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.

Randell
źródło

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.

drAlberT
źródło
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.

David Spillett
źródło
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

użytkownik1879928
źródło
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.

Wayne
źródło