Doğru php.ini dosyasını bulun


168

Şu anda düzenlemek için doğru php.ini dosyasını bulmaya çalışıyorum ve değişiklikler yapılacağı için apache'yi yeniden başlatıyorum.

Üç farklı php.ini dosyası buldum (neden üç tane olduğu hakkında hiçbir fikrim yok) dosyaları bu şekilde buldum.

$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini

Ben de yaptım ....

$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini

Hepsini (sadece emin olmak için) istediğim ayarlarla değiştirdim.

Kullanarak apache'yi yeniden başlattım

sudo service apache2 restart

Sonuçlar...

* Restarting web server apache2

Sayfayı yeniden yükledim ve php.ini dosyasının güncellenmediğini gösterdi.

Bunu biliyorum çünkü kullandım

echo ini_get('post_max_size');

20 milyon olarak değiştirilmesi gerekiyordu ama yine de sadece 2 milyon oldu

Bilgisayarımın apache sunucusunu durduracağını ve php.ini dosyasını doğru ayarlarla tekrar yükleyeceğini düşünerek bilgisayarımı yeniden başlatmayı denedim, ancak bu deneme aynı zamanda başarısız oldu.

Müdahale edebilecek başka bir php.ini dosyası olma ihtimali var mı?


6
'doğru' olanı apache2alt
dizindedir

1
updatedb; locate php.iniyerine kullanın find.
sjas,

@Michael Dosya, /etc/php/5.6/apache2/php.iniUbuntu 16.04 LTS Xenial Xerus'ta bulunur, burada 5.6/php sürümü yüklüdür. Önce dosyayı kopyalayın, php.original.inisonra düzenlemek için açınız sudo gedit /etc/php/5.6/apache2/php.ini
Hedley Finger

Yanıtlar:


288

Sahip olduğunuz üç dosya her biri farklı kullanımlar içindir.

/etc/php/5.6/cli/php.iniphpTerminalde çalıştırarak bulduğunuz CLI PHP programı içindir .

/etc/php/5.6/cgi/php.ini Bu kurulumda özellikle kullanılmayan php-cgi sistemi içindir.

/etc/php/5.6/apache2/php.iniApache tarafından kullanılan PHP eklentisi içindir. Bu, Apache kurulumunuz için uygulanacak değişiklikler için düzenlemeniz gereken şeydir.

/etc/php/5.6/fpm/php.iniiçindir php5-fpm(Nginx kapalı el gibi PHP işleme için bir Fastcgi uyumlu 'ambalaj' olan işlemci, php5-fpm) ve (Apache PHP eklenti aksine) sistemi üzerinde bağımsız işlem olarak çalışır

Ubuntu sürümleri için alt 16.04 den, /etc/php/5.6/, /etc/php/7.0/, /etc/php/7.1/, ve benzeri değiştirilir /etc/php5/vb vb. Aksi takdirde, bu yollar doğru kalır. Bunu, ortamınız için uygun şekilde uyarlayın, 5.6veya sayıyı ortamınızda bulunan gerçek sürüm klasörü ile değiştirin .


1
php.ini / etc / php5 / apache2 dizininde bulunamadı. ancak orada cli dizininde bulunur.
Anuj TBE

2
@ anujsharma9196 Durumun tek sebebi PHP için Apache eklentisini kullanmamanızdır. Dosya yolları hala burada listelenen şekilde çalışıyor (15.04 VM’mde onaylandı)
Thomas Ward

21

Tarayıcınızda bu pasajı içeren bir komut dosyası çalıştırmayı <?php phpinfo(); ?>deneyin ve ardından Yüklü Yapılandırma Dosyası gibi bir şey aramayı deneyin . Bu giriş PHP'nin Apache sunucunuzda kullandığı php.ini dosyasını belirtir.


14

Hangi php.iniCLI'nın kullandığını bulmak için aşağıdakileri çalıştırabilirsiniz:

php -i | grep 'php.ini'

Örnek çıktı:

$ php -i | grep 'php.ini'

Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini

Bu kabul edilen cevap olmalı!
Marcelo Ágil

1
Bu iyidir, ancak sadece php için cli yüklü yapılandırmaları verecektir. Apache'nin yapılandırılmış olması için web sayfasındaki phpinfo () işlevini yapmanız gerekir.
Dipu Raj


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.