Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi

PHP sunucusu nedir?​


PHP sunucusu, PHP kodlarını çalıştırıp sonucunu istemciye gönderen çalışma ortamıdır. Teknik olarak PHP bir sunucu değil, sunucu tarafında çalışan bir programlama dilidir. Kullanıcı tarayıcıdan bir PHP sayfası istediğinde web sunucusu isteği alır, PHP çalışma zamanına iletir; PHP kodu çalıştırılır ve oluşan HTML, JSON veya başka bir yanıt tarayıcıya gönderilir. PHP kaynak kodu normal koşullarda tarayıcıya gönderilmez.

PHP sunucusu nasıl çalışır?​


Bir PHP uygulamasında genellikle üç görev birlikte çalışır:

  • İstemci: Tarayıcı veya API istemcisi HTTP isteğini gönderir.
  • Web sunucusu: Apache veya Nginx gibi yazılım isteği kabul eder ve statik dosyaları sunar. PHP isteğini PHP çalışma zamanına aktarabilir.
  • PHP çalışma zamanı: PHP dosyasındaki kodu yürütür, veritabanı veya dosya işlemlerini yapar ve yanıt üretir.

Örneğin urun.php dosyasında veritabanından ürün bilgisi okunuyorsa tarayıcı bu dosyanın PHP kodunu görmez; yalnızca PHP çalıştıktan sonra üretilen yanıtı alır. Bu nedenle PHP, tarayıcıda doğrudan çalışan JavaScript'ten farklı olarak çoğunlukla sunucu tarafında yürütülür.

Web sunucusu ile PHP arasındaki fark​


“PHP sunucusu” ifadesi günlük kullanımda anlaşılır olsa da iki kavramı ayırmak hata çözümünü kolaylaştırır. Web sunucusu HTTP bağlantısını yönetir; PHP ise PHP dosyasının içeriğini yorumlar ve çalıştırır.

BileşenTemel göreviÖrnek çıktı veya iş
TarayıcıHTTP isteği gönderir ve yanıtı görüntülerHTML sayfası
Web sunucusuİsteği kabul eder, dosyaları sunar ve PHP'ye aktarırİstek yönlendirme
PHP çalışma zamanıPHP kodunu çalıştırırHTML veya JSON üretimi

Bir kurulumda bu bileşenlerin tümü aynı makinede bulunabilir; ancak görevleri aynıdır anlamına gelmez. PHP dosyasını tarayıcıda açamamak web sunucusundan, PHP'nin bulunamaması çalışma zamanından veya dosya içindeki bir hatadan kaynaklanabilir.

Yerel geliştirme örneği​


Yerel geliştirme için PHP'nin yerleşik geliştirme sunucusu kullanılabilir. Ön koşul, PHP çalışma zamanının kurulu olması ve komut satırından php komutunun çalışmasıdır.

  1. Bir klasörde index.php adında dosya oluşturun ve şu içeriği kaydedin:
    Kod:
    <?php
    echo "PHP çalışıyor";
  2. Komut satırında bu klasöre geçin ve sunucuyu başlatın:
    php -S 127.0.0.1:8000
  3. Tarayıcıda http://127.0.0.1:8000 adresini açın.
  4. Ekranda PHP çalışıyor görünüyorsa istek PHP tarafından işlenmiştir. Görünmüyorsa önce komutun tanınıp tanınmadığını ve dosyanın doğru klasörde olup olmadığını kontrol edin.

Bu yerleşik sunucu yerel geliştirme ve deneme içindir; üretim ortamında tek başına genel kullanıma açılacak bir web sunucusu olarak değerlendirilmemelidir. Gerçek bir yayında web sunucusu, PHP çalışma zamanı ve uygulamanın ihtiyaç duyduğu veritabanı gibi bileşenler birlikte yapılandırılır.

Sık yapılan hatalar​


  • PHP dosyasını çift tıklayarak açmak: Bu işlem dosyayı çalıştırmak yerine metin olarak açabilir. PHP kodu bir PHP çalışma zamanı üzerinden yürütülmelidir.
  • PHP kodunu HTML gibi doğrudan sunmak: Sunucu PHP'yi işlemiyorsa kaynak kod sızabilir veya sayfada beklenmeyen metin görünebilir. Dosyanın PHP işleyicisine yönlendirildiği doğrulanmalıdır.
  • Web sunucusu ile PHP'nin kurulu olduğunu aynı şey sanmak: Web sunucusunun çalışması, PHP çalışma zamanının doğru kurulduğunu garanti etmez.
  • Geliştirme sunucusunu üretimde kullanmak: Yerel test için uygun olan basit sunucu, üretim trafiği ve güvenlik gereksinimleri için varsayılan çözüm değildir.

Sık sorulan sorular​


PHP çalıştırmak için mutlaka Apache gerekir mi?​


Hayır. PHP komut satırından çalıştırılabilir veya yerel geliştirme sunucusu kullanılabilir. Web uygulamasını gerçek HTTP trafiğiyle yayınlamak içinse uygun bir web sunucusu ve PHP çalışma ortamı birlikte yapılandırılır.

PHP sunucusu ile hosting aynı şey midir?​


Hayır. Hosting, uygulamanın çalıştığı barındırma hizmeti ve altyapıdır. PHP sunucusu ise bu altyapı içinde PHP kodunu işleyen çalışma ortamını anlatan günlük bir ifadedir.

Terminalde PHP sürümünü görmek web sitesindeki sürümü kanıtlar mı?​


Hayır. php -v terminalin kullandığı PHP yürütücüsünü gösterir. Site farklı bir PHP-FPM hizmeti veya işleyiciyle çalışabilir. Bir hatayı karşılaştırırken siteye atanmış PHP sürümünü ve yapılandırmasını da kontrol edin; yalnız terminal çıktısına dayanmayın.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.