location
ใช้เพื่อจับคู่นิพจน์และสร้างกฎสำหรับพวกเขา
upstream
กำหนดเซิร์ฟเวอร์ที่สามารถอ้างอิงได้
ในตัวอย่างของคุณนี่หมายความว่าถ้าคุณต้องการที่จะได้รับเทียบเท่า
location ~ \.php$ {
try_files $uri = 404;
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
คุณจะต้อง
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;
}
ประโยชน์ของบล็อกอัปสตรีมคือคุณสามารถกำหนดค่าเซิร์ฟเวอร์ / พอร์ต / บริการมากกว่าหนึ่งรายการเป็นอัปสตรีมและแจกจ่ายทราฟฟิกบนบล็อกตัวอย่างเช่น:
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;
}
คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับสิ่งนี้ได้ในเอกสารประกอบของ nginx:
http://nginx.org/en/docs/http/ngx_http_upstream_module.html