亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用代理的內聯負載均衡 - try_files

使用代理的內聯負載均衡 - try_files

PHP
喵喵時光機 2022-09-17 17:55:42
我正在嘗試設置多個php-fpm服務器來處理流量峰值?,F在我有一臺機器運行Nginx + PHP7.3-fpm + Redis(6vCPU和16GB內存),另一臺單獨的機器僅運行php-fpm 7.3和相同的擴展。一切都很好,但我必須為流量高峰制定一個計劃。我不知道如何連接這臺新的隔離機器與主服務器一起工作而不會遇到很多麻煩。我已經研究了很多關于它的東西,并沒有發現任何特別的東西。我能找到的最有價值的鏈接是:https://serverfault.com/questions/744124/file-issue-with-nginx-php-fpm-on-separate-serversnginx - php-fpm clusterhttps://blog.digitalocean.com/horizontally-scaling-php-applications/恩金克斯提供來自不同服務器的php文件我閱讀了幾篇關于它的文檔,但主要的疑問仍然存在:我可以簡單地從所有nginx位置中刪除try_files行,并在php中設置cgi.fix_pathinfo = 0.ini這樣我就不必在所有服務器上都有文件嗎?或者為了安全起見,最好安裝一個NFS系統,讓每個.php文件在所有服務器中,包括php-fpm專用服務器?有些人說“創建一個NFS并掛載到所有php-fpm代理服務器或使用rsync通過服務器同步文件”,其他人說“刪除try_files它會起作用”,但我確實找到了一篇文章說“刪除try_files并交叉手指不要被黑客入侵”。:O什么是更好/正確/最安全的方法?我們現在還可能被黑客入侵以刪除try_files?如果我可以簡單地刪除try_files,那么使用不同軟件的不同位置是否正常工作?假設我在根文件夾上有一個WP,在/論壇/文件夾上有一個Xenforo安裝。try_files彼此不同。服務器之前的上游塊{}        upstream backend {            server unix:/var/run/php/php7.3-fpm.sock weight=100 max_fails=5 fail_timeout=5;            server unix:/var/run/php/php7.3-fpm-2.sock weight=100 max_fails=5 fail_timeout=5;            #I want to add 192.168.x.x:9000 here to balance with this origin server        }服務器塊的示例:        location / {                try_files $uri $uri/ /index.php;        }        #AMP        location /amp/ {                try_files $uri $uri/ /amp/index.php;        }        #forum        location /forum/ {                try_files $uri $uri/ /forum/index.php?$uri&$args;                index index.php index.html;        }        location ~ \.php$ {            include snippets/fastcgi-php.conf;            #fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;            fastcgi_pass backend;        }我還綁定了php-fpm服務器以在其內部IP(不是127.0.0.1)上運行,并設置為在php中listen.allowed_clients上訪問nginx代理IP.ini此外,nmap是否從源服務器在php-fpm-服務器-IP:9000上運行,它說它正在運行和啟動。如果您知道如何或可能有一個鏈接顯示如何,請分享。我有機器待命,只是等待一起工作,請幫助實現這一目標。
查看完整描述

1 回答

?
米琪卡哇伊

TA貢獻1998條經驗 獲得超6個贊

由于我沒有答案的幫助,我最終做了一個從源服務器到PHP服務器的NFS,只是為了擁有文件,從而保持try_files。我不想冒著在不知道安全后果的情況下刪除try_files的風險。

所以現在對我來說,正確的答案是做一個NFS并將NGINX請求傳遞給PHP-FPM縮放機。一切都很順利,沒有重大問題。唯一的問題是更改 php-fpm.conf 中的內部 IP,將內部 IP 包含在 NFS 服務器中,并將新的內部 IP 包含在 NGINX 上游池中。當然,從文件中刪除php會話到Redis。這樣,在將請求從源服務器更改為縮放服務器時,記錄的頁面不會注銷。


查看完整回答
反對 回復 2022-09-17
  • 1 回答
  • 0 關注
  • 105 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號