Gdzie mogę znaleźć php.ini?
Kilka lat temu zainstalowałem Apache 2.2 x i PHP 5.3.1 na serwerze Linux, który utrzymuję. Używałem .smoła.gz i zbudował je zgodnie z instrukcją (zamiast rpms i co-masz-ty). I wszystko było w porządku.
Dzisiaj muszę zainstalować to , które wygląda jak biblioteka PHP. Przeszedłem przez wszystkie kroki, aby zainstalować i znalazłem ibm_db2.so in $PHP_HOME/lib/extensions/somecomplicatedname/ibm_db2.so
Wielki haczyk jest ostatnim krokiem jest skonfigurowanie php.ini ale nie ma php.ini w moim systemie. Horror horroru. PHP działa dobrze, z wyjątkiem oczywiście tego nowego ibm_db2 thingamagic, którego chcę użyć, aby ktoś mógł użyć GUI do majstrowania z DB2
. (Próbowałem małego skryptu php, który się nie powiedzie i wskazuje, że funkcje ibm_db2 nie są dostępne).
Mam do czynienia z PHP raz na kilka lat, więc proszę oświeć mnie na bardzo podstawowym poziomie o tym, co mogę zrobić, aby umożliwić dostęp do interfejsu graficznego w internecie DB2
.
15 answers
Najlepszym sposobem na znalezienie tego jest: Utwórz plik php i dodaj następujący kod:
<?php phpinfo(); ?>
I otworzyć go w przeglądarce, pokaże plik, który jest rzeczywiście odczytany!
Aktualizacje przez OP:
- wcześniej przyjęta odpowiedź prawdopodobnie będzie szybsza i wygodniejsza dla ciebie, ale nie zawsze jest poprawna. Zobacz komentarze do tej odpowiedzi.
- zwróć również uwagę na wygodniejszą alternatywę
<?php echo php_ini_loaded_file(); ?>
wspomnianą w tej odpowiedzi.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-27 15:55:12
W linii poleceń wykonaj:
php --ini
Dostaniesz coś w stylu:
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/curl.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_sqlite.ini,
/etc/php5/cli/conf.d/sqlite.ini,
/etc/php5/cli/conf.d/sqlite3.ini,
/etc/php5/cli/conf.d/xdebug.ini,
/etc/php5/cli/conf.d/xsl.ini
To z mojej lokalnej dev-machine. Jednak druga linia jest interesująca. Jeśli nic nie jest wymienione, spójrz na pierwszy. To jest ścieżka, gdzie PHP szuka php.ini
.
Możesz grep te same informacje za pomocą phpinfo()
w skrypcie i wywołać je za pomocą przeglądarki. Jego wspomniany w pierwszym bloku wyjścia. php -i
robi to samo dla wiersza poleceń, ale jego całkiem niewygodne.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-01-14 02:43:57
To działa dla mnie:
php -i | grep 'php.ini'
Powinieneś zobaczyć coś w stylu:
Loaded Configuration File => /usr/local/lib/php.ini
P. s. Aby uzyskać tylko php.ścieżka inin
php -i | grep /.+/php.ini -oE
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-16 06:40:09
W oknie poleceń Typ
php --ini
Pokaże Ci ścieżkę coś w stylu
Configuration File (php.ini) Path: /usr/local/lib
Loaded Configuration File: /usr/local/lib/php.ini
Jeśli powyższe polecenie nie działa, użyj tego
echo phpinfo();
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-09 12:36:25
To polecenie powinno pomóc ci je znaleźć
php -r "phpinfo();" | grep php.ini
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-09 16:59:39
Użyj następujących poleceń, aby znaleźć ścieżkę php.ini
w Linuksie.
[root@AnyDirectory ~]# locate php.ini
/etc/php.ini
/etc/php.ini.rpmnew
/usr/share/doc/php-common-5.4.45/php.ini-development
/usr/share/doc/php-common-5.4.45/php.ini-production
albo spróbuj w inny sposób
[root@AnyDirectory ~]# php --ini
its pokazuje wynik ścieżki
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-22 05:04:25
phpinfo();
Powie Ci jego lokalizację, lub z linii poleceń
php -i
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-15 14:32:24
PHP jest wyposażony w dwie natywne funkcje, które pokazują, który plik konfiguracyjny jest załadowany:
- php_ini_loaded_file zwraca załadowany plik ini
- php_ini_scanned_files zwraca listę .pliki INI przetwarzane z dodatkowego katalogu ini
W zależności od konfiguracji, Apache i CLI mogą używać różnych plików ini. Oto dwa rozwiązania:
Apache:
Po prostu dodaj następujący plik php i otwórz go w swoim przeglądarka
print php_ini_loaded_file();
print_r(php_ini_scanned_files());
CLI:
Kopiuj-Wklej w Terminalu:
php -r 'print php_ini_loaded_file(); print_r(php_ini_scanned_files());'
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-06 14:28:48
Uruchom to w wierszu poleceń:
php -r "echo php_ini_loaded_file().PHP_EOL;"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-24 21:30:10
find / -name php.ini
Hej... u mnie zadziałało!Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-22 07:22:11
Wypróbuj jedno z tych rozwiązań
W twoim typie terminala
find / -name "php.ini"
W twoim typie terminala
php -i | grep php.ini
. Powinien pokazać ścieżka do pliku jakoConfiguration File (php.ini) Path => /etc
- Jeśli masz dostęp do jednego z plików php, otwórz go w edytorze (notatniku)
i wstaw poniższy kod po
<?php
w nowej liniiphpinfo();
to powiem ci php.miejsce ini - możesz także rozmawiać z php w trybie interaktywnym. Wystarczy wpisać
php -a
w terminala i wpisz phpinfo (); po php rozpoczęty.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-06-07 16:57:07
Możesz uzyskać więcej informacji o swoich plikach konfiguracyjnych, używając czegoś takiego jak:
$ -> php -i | ack config # Use fgrep -i if you don't have ack
Configure Command => './configure' ...
Loaded Configuration File => /path/to/php.ini
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-30 22:25:22
Dla SAPI: php-fpm
Nie ma potrzeby tworzenia php.info plik (nie jest to dobra polityka, aby pozostawić go do przeczytania światu i tak). W wierszu poleceń:
php-fpm -i | more
Gdzieś w swoim wyjściu wyświetli ten wiersz:
Configuration File (php.ini) Path => /etc
Tutaj jest bardziej kompletne wyjaśnienie: https://www.cloudinsidr.com/content/how-to-figure-out-your-php-configuration-parameters-without-info-php/
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-12-23 07:48:29
Istnieje kilka ważnych sposobów na zlokalizowanie php.plik ini, ale jeśli natknąłeś się na tę stronę, ponieważ chcesz coś z nią zrobić w skrypcie bash:
path_php_ini="$(php -i | grep 'Configuration File (php.ini) Path' | grep -oP '(?<=\=\>\s).*')"
echo ${path_php_ini}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-04 04:37:18
Użyj <?php echo phpinfo(); ?>
.
Na stronie wyświetlana jest tabela pokazująca położenie php.ini.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2021-02-12 19:06:02