2013-03-27 12 views
8

Ustawiłem PHP 5.3.10 na serwerze RHEL 4.Skąd PHP otrzymuje swoje ustawienia, jeśli nie załadowano pliku konfiguracyjnego?

Kiedy wpadłem php -i | grep "Loaded" powrócił

Loaded Configuration File => (none)

Jest OK z tej instalacji. PHP działa tak, jak tego potrzebowaliśmy. Po prostu muszę wiedzieć, czy php.ini nie jest używany, skąd PHP ma wszystkie jego ustawienia? Dzięki.

Aktualizacja: zdałem sobie z tego sprawę po tym, jak kliknąłem przesłać. Przepraszam, jak przenieść to do Stack Overflow? -_-

Aktualizacja 2: Wynik php --ini:

Configuration File (php.ini) Path: /usr/local/lib Loaded Configuration File: (none) Scan for additional .ini files in: (none) Additional .ini files parsed: (none)

+0

Ktoś z wystarczającą Rep prawdopodobnie będzie migrować (ruch) to do SO. Jeśli chcesz, możesz kliknąć link "Oznacz flagą" u dołu pytania, a następnie wybrać opcję "Inne" i wpisać wiadomość z prośbą moderatora o przeniesienie. –

+0

@KevinFegan Dzięki, właśnie oznaczyłem to. – d4ryl3

Odpowiedz

2

To może zależeć od konfiguracji serwera.

To może być (w zależności od wersji PHP), że konfiguracja PHP jest sterowany z poziomu plików konfiguracyjnych Apache: How to change configuration settings

Można użyć funkcji phpinfo(), aby wyświetlić ustawienia konfiguracji PHP (w tym config katalog plików). Utwórz plik info.php (na przykład w folderze, który jest „DocumentRoot”) i edytować plik zawiera następujący kod:

<? phpinfo(); ?> 

Więc, jeśli twoja domena to:

http://example.com 

a twój "DocumentRoot" to:

".../www" or ".../public_html" 

Umieść plik w tym folderze, a następnie za pomocą przeglądarki, przejdź do:

http://example.com/info.php 

Powinno to pokazać wszystkie ustawienia.

+0

Przykro mi. Zapomniałem powiedzieć, że ten serwer nie ma żadnego serwera WWW, a my po prostu używamy CLI. Doceniam jednak pomoc. Dzięki. – d4ryl3

2

Przede wszystkim zrozumiałeś, że PHP z linii poleceń używa innego php.ini. A moduł Apache (lub NGINX itp.) Używa innego php.ini.

Możesz spróbować użyć bardziej niezawodnego polecenia: php --ini zamiast php -i, aby upewnić się, że nie ładuje żadnych konfiguracji.

Zazwyczaj ładuje php.ini z /etc/php5

Jeśli polecenie nie pokazuje nic, więc można spróbować dodać, że plik (/etc/php5/cli/php.ini) ręcznie i sprawdzić.

W RedHat może znajdować się bezpośrednio na katalogu /etc/.

+0

Zrobiłem 'php --ini', wyniki są na moje pytanie. Maszyna nie ma serwera WWW. Dzięki. – d4ryl3

+0

Czy próbowałeś ręcznie stworzyć /etc/php.ini lub /etc/php5/cli/php.ini? – bakytn

+0

Nie, ponieważ nie próbujemy tego zrobić. Właściwie to po prostu pytam, gdzie PHP ma swoje ustawienia, jeśli nie używa się php.ini. Dzięki. – d4ryl3

4

Jeśli nie ma załadowanego pliku konfiguracyjnego php, przyjmuje on tylko wartości domyślne.Proszę sprawdzić dokumentację mieć listę wartości domyślnych:

http://php.net/manual/en/ini.core.php

Powiązane problemy