Zauważ, że działa to poprzez dodanie / usunięcie linków w /etc/php5/{apache2,cli,...}/conf.d/
Pierre-Olivier Vares
1
@ Pierre-OlivierVares Ten komentarz był naprawdę istotną informacją tutaj.
Xatenev
14
Możesz włączyć rozszerzenie z wiersza poleceń, używając:
php -d extension=/path/to/extension.so
-dsłuży do przekazywania wartości ini przez wiersz poleceń. Niestety nie ma możliwości wyłączenia rozszerzenia w wierszu poleceń, jeśli zostało skonfigurowane w php.inipliku. (Oczywiście możesz postępować zgodnie z innymi odpowiedziami, ale nie możesz nic zrobić, używając żadnej -dopcji phppolecenia).
W jaki sposób można zapobiec ładowaniu rozszerzenia (np. Memcached) przed uruchomieniem na serwerze hostowanym, chociaż jest ono początkowo skonfigurowane? Nie kontroluję konfiguracji hosta, tylko skrypty na nim. Podejrzewam, że to w jakiś sposób psuje moje sesje i chciałbym się upewnić, że jest wyłączony, ponieważ tak naprawdę go nie używam ..
userfuser
3
Musisz użyć, -na następnie dołączyć każde potrzebne rozszerzenie za pomocą-dextension
awk
.).extension=x.so
aby wyłączyć x.Odpowiedzi:
Jeśli używasz PHP5.4 + na dystrybucji opartej na Debianie, możesz użyć php5enmod, aby włączyć i php5dismod, aby wyłączyć rozszerzenia PHP.
źródło
Możesz włączyć rozszerzenie z wiersza poleceń, używając:
-d
służy do przekazywania wartości ini przez wiersz poleceń. Niestety nie ma możliwości wyłączenia rozszerzenia w wierszu poleceń, jeśli zostało skonfigurowane wphp.ini
pliku. (Oczywiście możesz postępować zgodnie z innymi odpowiedziami, ale nie możesz nic zrobić, używając żadnej-d
opcjiphp
polecenia).źródło
Na Lubuntu potrzebowałem
pdo_sqlite
.Włącz ręcznie:
Jeśli nie działa, sprawdź:
Brak listy wyników
pdo_sqlite.ini
. Musimy to zainstalować.Lub dla php7:
Rozszerzenie
sqlite3
jest automatycznie włączane w CLI i Apache podczas procesu instalacji, a teraz mamymods-available
:pdo_sqlite.ini
,sqlite3.ini
.Wyłącz rozszerzenie za pomocą:
źródło
Możesz określić,
-n
aby uniknąć ładowania z rozszerzeńphp.ini
. Może to poprawić wydajność podczas korzystania z niej (np. XDebug). Na przykładźródło
Musisz użyć,
-n
a następnie dołączyć każde potrzebne rozszerzenie za pomocą-dextension
Przykład:
źródło
Możesz po prostu użyć
-i.bkp weź kopię zapasową jako php.php.bkp i zapisz w oryginalnym pliku
&& jeśli pierwsze polecenie zakończy się powodzeniem, przeładuj usługę httpd.
ale zauważam, że sed daje status wyjścia 0, gdy tupot wyszukiwania nie pasuje, więc możesz użyć
Lub możesz użyć poniższego skryptu do włączania i wyłączania:
źródło
conf.d/*.ini
plikach. Może trzeba zmodyfikować?użycie: phpenmod [-v ALL | php_version] [-s ALL | sapi_name] nazwa_modułu [nazwa_modułu_2]
Więc użyj phpenmod -s cli yourextension
źródło
Proszę to sprawdzić
Wszystkie zainstalowane pliki konfiguracyjne modułów PHP są dostępne w katalogu / etc / php / PHP_VERSION / mods-available
źródło