Php-fpm için yukarı akış ve konum kullanma arasındaki fark nedir?


18

Etrafta arama yaptım ama düz bir cevap bulamadım, eğer birisi bunu açıklığa kavuşturabilirse, çok takdir edilecektir, teşekkürler!

location ~ \.php$ {
    try_files      $uri = 404;
    fastcgi_pass   unix:/run/php-fpm/php-fpm.sock;
    fastcgi_index  index.php;
    include        fastcgi.conf;
}

VE / VEYA?

upstream php {
    server         unix:/run/php-fpm/php-fpm.sock;
}

Teşekkürler!

Yanıtlar:


9

İtibariyle ben bulduk nginxen azından konum blok için bana çalışmaktan sözdizimi 1.6.2:

location ~ \.php$ {
    try_files      $uri = 404;
    fastcgi_pass   php;
    fastcgi_index  index.php;
    include        fastcgi.conf;
}

yani: http://php arka ucuna başvurmadan önce protokol belirtmemelidir . http://phpSözdizimi ile kullanılacaksa proxy_pass, talimat değil fastcgi_pass.


23

location ifadeleri eşleştirmek ve bunlar için kurallar oluşturmak için kullanılır.

upstream başvurulabilecek sunucuları tanımlar.

Örneğinizde bunun anlamı,

location ~ \.php$ {
    try_files      $uri = 404;
    fastcgi_pass   unix:/run/php-fpm/php-fpm.sock;
    fastcgi_index  index.php;
    include        fastcgi.conf;
}

, ihtiyacın olur

upstream php {
    server         unix:/run/php-fpm/php-fpm.sock;
}
location ~ \.php$ {
    try_files      $uri = 404;
    fastcgi_pass   php;
    fastcgi_index  index.php;
    include        fastcgi.conf;
}

Yukarı akış bloğunun yararı, birden fazla sunucu / bağlantı noktası / hizmeti yukarı akış olarak yapılandırabilmeniz ve üzerlerindeki trafiği dağıtabilmenizdir, örneğin:

upstream php {
    server 127.0.0.1:8080       max_fails=3 fail_timeout=30s;
    server 192.68.1.2     weight=5;
    server         unix:/run/php-fpm/php-fpm.sock;
}

Bununla ilgili daha fazla bilgiyi nginx belgelerinde bulabilirsiniz:

http://nginx.org/en/docs/http/ngx_http_upstream_module.html


PHP için ip_hash nee? Kalıcılık ne olacak?
CMCDragonkai

1
Bunun fastcgi_pass php;yerine
rhgb
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.