Windows için PHP İş Parçacığı Güvenli ve İş Parçacığı Güvenli Değil


91

Windows için PHP'yi indiriyorum. Web sitesinde 2 seçeneğim var.

  1. PHP İş Parçacığı Güvenli
  2. PHP İş Parçacığı İçin Güvenli Değil

Lütfen gelecek soruları cevaplayın:

  1. İkisi arasındaki fark nedir? Birbirlerine göre avantajları ve dezavantajları nelerdir?
  2. Yoğun trafiğe sahip bir e-ticaret sitesi geliştiriyorum, hangisi daha çok tavsiye edilir ve neden?


1
"Yoğun trafik" den ne anlıyorsunuz ve bunu alacağınızdan nasıl emin olabilirsiniz?
Crack

@ Crack- Yoğun trafik, birçok kullanıcının belirli bir zamanda web sitesini kullanacağı anlamına gelir. Bundan neden emin olamıyorum ?! Bunda bir sorun mu var?
sumit

Yalnızca bu "yoğun trafik" birçok şekilde tanımlanabilir ve bazı insanlar için yoğun trafik, bazıları için orta, hatta hafif trafik olabilir. Burada yararlı bir metrik, sayfa sayısı / gün / saat / dakika, her türlü nesnel ölçüdür.
Crack

Yanıtlar:


95

PHP belgelerinden:

İş Parçacığı Güvenliği, ikili programın Windows'ta Apache 2 gibi çok iş parçacıklı bir web sunucusu bağlamında çalışabileceği anlamına gelir. İş Parçacığı Güvenliği, verilerin başka bir iş parçacığı ile çakışmaması için her iş parçacığında yerel bir depolama kopyası oluşturarak çalışır.

Peki ne seçmeliyim? PHP'yi bir CGI ikilisi olarak çalıştırmayı seçerseniz, o zaman her istekte ikilik çalıştırıldığı için iş parçacığı güvenliğine ihtiyacınız olmayacaktır. IIS5 ve IIS6 gibi çok iş parçacıklı web sunucuları için PHP'nin iş parçacıklı sürümünü kullanmalısınız.

Yani bu gerçekten PHP'yi nasıl kullanmak istediğinize bağlıdır:

  • Apache + LoadModule: İş Parçacığı Güvenli
  • Apache + FastCGI: İş Parçacığı İçin Güvenli Değil
  • IIS: İş Parçacığı Güvenli
  • IIS + FastCGI: İş Parçacığı İçin Güvenli Değil

PHP kılavuzunun güzel kurulum talimatları var .

PHP'yi FastCGI ile çalıştıran AFAIR tercih edilen bir yoldur, daha hızlı çalışır ve daha hassas güvenlik yapılandırmasına izin verir.


11
Bu sayfa şunu söyler: "PHP'yi IIS ile kullanıyorsanız, PHP'nin İş Parçacığı Olmayan Güvenli (NTS) sürümlerini kullanmalısınız." cevaba kıyasla: "IIS: Konu Güvenli"
umutm

9
Evet ve FastCGI'den bahsediyor. Güvenli İş Parçacığı ISAPI (php5isapi.dll) kullanılırken kullanılır
Crack

3
Neden iş parçacığı güvenli olmayan seçenekle uğraşasınız ki? Şuna benzer: Güvenli bir araba satın almakla güvenli olmayan bir araba satın almak arasında seçim yapabilseydim, neden güvenli olmayan arabayı seçeyim? Daha iyi mi performans gösteriyor?
Simon East

4
@SimonEast NTS sürümünde, web sunucusu tarafından zaten yapılmış olan bazı ek yük yönetimi konuları vardır, bu nedenle performans düşecektir
ReZa

3
@SimonEast Kesinlikle.
Biri

2

Hızlı ve basit: Apache kullanıyorsanız, Apache24 \ conf \ httpd.conf dosyanızı düzenleyin ve "loadmodule" arayın. Loadmodülünüzün bir .dll'ye aşağıdaki gibi başvurduğunu görürseniz:

LoadModule php7_module "e: /x64Stack/PHP/php7.1.9/php7apache2_4.dll"
AddHandler uygulaması / x-httpd-php .php
PHPIniDir "e: /x64Stack/PHP/php7.1.9"

O zaman istiyorsun İş Parçacığı Güvenliği'nin etkinleştirilmesini veya TS - İş Parçacığı Güvenli sürümünü .

Aksi takdirde, CGI ile IIS veya Apache kullanıyorsanız, NTS çeşidi.

Birden çok yığın kullanıyorum ve bu birden çok sunucu ve PHP sürümünde yolların / php veya sunucu sürümlerinin sizi yönlendirmesine izin vermeyin.


0

Crack'e ek olarak, 5.4'ten beri yerleşik web sunucusunu kullanabilirsiniz (güzel çalışıyor!).

Uyarı Bu web sunucusu, uygulama geliştirmeye yardımcı olmak için tasarlanmıştır. Kontrollü ortamlarda çalıştırılan test amaçlı veya uygulama gösterileri için de yararlı olabilir. Tam özellikli bir web sunucusu olması amaçlanmamıştır. Halka açık bir ağda kullanılmamalıdır.


13
Bahsettiğiniz şeye bir çeşit referans eklemeniz gerekiyor. Hangi yerleşik web sunucusu? Bunun ThreadSafe ve NotThreadSafe ile ilişkisi nedir?
Despertar

2
Sanırım yerleşik web sunucusundan, PHP'nin yerleşik web sunucusunu ( php -S ip:port) - yine de iş parçacığı güvenliği ile ilişkisi hakkında hiçbir fikrim yok.
David Refoua
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.