phpinfo ile sistem bilgileri

phpinfo-ile-sistem-bilgileri (büyük resim için tıklayın)

phpinfo()

phpinfo() fonksiyonu, PHP'nin çalıştığı sunucu hakkında detaylı bilgi veren bir fonksiyondur. Bu fonksiyon kullanıldığında, PHP konfigürasyonu, yüklü modüller, sunucu bilgileri ve güvenlik ayarları gibi birçok teknik bilgi görüntülenir.

phpinfo() Çıktısında Bulunan Ana Bilgiler

phpinfo() fonksiyonunu çalıştırmak için aşağıdaki PHP kodunu bir dosyaya yazıp çalıştırabilirsin:

<?php phpinfo(); ?>

Bu fonksiyonun çıktısında bulunan ana bilgiler şunlardır:

1️⃣ PHP Sürümü ve Yapılandırması

  • PHP Version: Yüklü PHP sürümünü gösterir (örneğin: PHP 8.1.2).
  • System: PHP’nin çalıştığı işletim sistemi (Linux, Windows, macOS vb.).
  • Build Date: PHP’nin derlenme tarihi.
  • Server API: PHP’nin çalıştığı ortam (Apache, Nginx, CGI, FPM vb.).
  • Loaded Configuration File: Kullanılan ana php.ini dosyasının konumu.

2️⃣ PHP Konfigürasyon Ayarları

Bu bölümde PHP'nin yapılandırma dosyasındaki (php.ini) temel ayarlar görüntülenir:

  • max_execution_time: PHP betiklerinin çalışabileceği maksimum süre (örn. 30 saniye).
  • memory_limit: PHP’nin kullanabileceği maksimum RAM miktarı (örn. 128M).
  • post_max_size: HTTP POST isteğiyle gönderilebilecek maksimum veri boyutu (örn. 8M).
  • upload_max_filesize: Yüklenebilecek maksimum dosya boyutu (örn. 2M).
  • display_errors: PHP hata mesajlarının gösterilip gösterilmediği (On veya Off).

3️⃣ PHP Uzantıları ve Modüller

PHP ile birlikte yüklenen eklentiler (extensions) ve modüller listelenir:

  • Core: PHP’nin çekirdek ayarları.
  • date: Tarih ve saat fonksiyonları (date_default_timezone_set() gibi).
  • PDO (PHP Data Objects): Veritabanı bağlantılarını yöneten modül.
  • mysqli & pdo_mysql: MySQL ile bağlantı kuran eklentiler.
  • openssl: HTTPS ve şifreleme işlemleri için kullanılır.
  • curl: Web servisleriyle bağlantı kurmak için kullanılır.
  • gd & imagemagick: Görsel işleme kütüphaneleri.
  • mbstring: Çok baytlı karakter setleri (UTF-8) ile çalışmak için kullanılır.
  • json: JSON veri işleme modülü.
  • zip: PHP’de ZIP dosyalarını işlemek için kullanılır.
  • intl: Uluslararasılaştırma desteği sağlar.

4️⃣ HTTP ve Sunucu Bilgileri

  • HTTP Headers: Sunucuya gelen HTTP istek başlıkları.
  • $_SERVER değişkenleri: Sunucu ortam değişkenleri (SERVER_NAME, REMOTE_ADDR vb.).
  • Apache/Nginx Bilgileri: Eğer Apache veya Nginx kullanılıyorsa, yüklü modüller de görüntülenir.

5️⃣ disable_functions Listesi

Bazı hosting sağlayıcıları güvenlik nedeniyle bazı PHP fonksiyonlarını kapatabilir. Bu ayar disable_functions altında gösterilir.

Örneğin, aşağıdaki fonksiyonlar devre dışı bırakılmış olabilir:

disable_functions = system, exec, shell_exec, passthru, proc_open

Bu fonksiyonlardan birini kullanamıyorsan, phpinfo() çıktısında disable_functions değerini kontrol edebilirsin.

6️⃣ PHP Çalışma Ortamı (PHP-FPM, FastCGI vb.)

  • PHP API: CGI/FPM, mod_php, CLI gibi PHP'nin hangi ortamda çalıştığını gösterir.
  • Virtual Directory Support: Sanal dizin desteğinin olup olmadığını gösterir.
  • PHP SAPI (Server API): PHP’nin Apache, Nginx, FastCGI veya CLI modunda çalışıp çalışmadığını belirtir.

7️⃣ PHP Bellek Kullanımı ve Performans Ayarları

  • memory_limit: PHP’nin kullanabileceği maksimum RAM.
  • opcache.enable: Opcode cache’in açık olup olmadığı.
  • realpath_cache_size: Dosya yollarını önbelleğe alma boyutu.

8️⃣ Yüklenen Dosya Yolları

  • Configuration File (php.ini) Path: Kullanılan php.ini dosyasının tam yolu.
  • Loaded Configuration File: Yüklenen php.ini dosyası.
  • extension_dir: PHP uzantılarının bulunduğu dizin.

9️⃣ PHP ile İlgili Özel Ayarlar

  • session.save_path: PHP oturumlarının (sessions) nerede saklandığı.
  • open_basedir: PHP’nin erişebileceği dizin sınırlandırmaları.
  • allow_url_fopen: PHP’nin uzak dosyaları açıp açamayacağı.

???? phpinfo() Güvenlik Riski ve Alternatif Kullanımı

phpinfo() fonksiyonu çok fazla sistem bilgisini açığa çıkardığı için güvenlik riski oluşturabilir. Eğer sunucundaki güvenlik bilgilerini başkalarının görmesini istemiyorsan:

phpinfo() çıktısını geçici olarak kullanıp, işlem bittikten sonra dosyayı sil.
Alternatif olarak sadece belirli bilgileri almak için şu komutu kullanabilirsin:

<?php echo "PHP Version: " . phpversion(); echo "Memory Limit: " . ini_get("memory_limit"); ?>

???? Sonuç

phpinfo() ile PHP'nin tüm yapılandırma bilgilerini, modüllerini, sunucu ayarlarını ve hata ayarlarını öğrenebilirsin.
Eğer PHP üzerinde system(), exec(), shell_exec() gibi fonksiyonları çalıştırmada sorun yaşıyorsan, disable_functions ayarını kontrol etmek için phpinfo() çıktısına bakmalısın.
phpinfo() çıktısını herkese açık bırakmamak için işin bittikten sonra dosyayı silmelisin.

*Gönderi ve görsel chatgpt ile oluşturulmuştur.

omurs

Ö S, 30 Ağustos 2018 Perşembe 15:30 tarihinde kayıt oldu

Etiketler

Beğeni

Toplam Beğeni Sayısı: 2


Yıllara Göre Gönderiler








LombokLoglamaB2C (Business-to-Consumer)B2B (Business-to-Business)İçerik Yönetim Sistemi - CMS (Content Management System)Pagination (Sayfalama)Sanal Özel Ağ - VPN (Virtual Private Network)Cronjob (Zamanlanmış Görevler)Printer-YazıcıJava'daki İlkel Veri Tipleri ve Alabilecekleri DeğerlerBit & Byte ve Hafıza Boyutlarındaki Ölçüm BirimleriSanallaştırma (Virtualization)DNS KayıtlarıE-Fatura ve E-ArşivYazılım Lisans TürleriAudit (Denetim) Açık Kaynak (Open Source)Monitoring (İzleme)Sitemap & Robots.txtKilometretaşı (Milestone)BSMV (Banka ve Sigorta Muameleleri Vergisi)KKDF (Kaynak Kullanımı Destekleme Fonu)Siber Pazartesi (Cyber Monday)Black Friday (Kara Cuma)Hotlink.htaccessCryptoLockerMalwareTrojanWormDependency (Yazılım Geliştirme Sürecinde Paket Bağımlılığı)Configuration (Yazılım Geliştirme Sürecinde Yapılandırma)Yahoo ve Yahoo'nun Başarısızlık NedenleriArchiving (Yazılım Geliştirme Sürecinde Arşivleme)Görsel Dosya Türleri (Image Types)ReleaseVersioning & Tagging (Versiyonlama ve Etiketleme)BuildJob (Yazılım Geliştirme Sürecinde Görevler)SonarQubeCDATA (Character Data)Alan Adı Uzantıları (Domain Name Extensions)Regresyon Kara Kutu (Black-Box) TestBeyaz Kutu (White-box) TestGri Kutu (Grey-box) TestYazılım Geliştirme Sürecindeki Temel Test TürleriKod gözden geçirme (Code Review)Birim Testi (Unit Testing)Yazılım Sürecinde EntegrasyonJAR & WAREager & Lazy Fetch TypeMaskelemeKPI (Key Performance Indicator)KII (Key Impact Indicator)Projenin JAR Dosyasını Oluştur - JAR PathSunucu için Linux dağıtım SeçimiKonyteynerler (container technologies)Runtime & Compile Time (Çalışma ve Derleme Zamanı)@Anotasyonlar (@Annotations)