色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

nginx 解析 php

呂致盈1年前8瀏覽0評論
Nginx是一個高性能的Web服務器,可以作為負載均衡器、反向代理等多種角色。在使用Nginx作為Web服務器時,往往需要將其配置為支持解析PHP代碼。本文將針對Nginx如何解析PHP進行詳細探究。 Nginx也可以為PHP提供服務,nginx以HTTP請求為中心,效率高,在高并發訪問時負載比較小。解析PHP的方式主要有兩種:FPM和FastCGI。 PHP處理方式之1:FastCGI FastCGI是一種比CGI更快速、更穩定的通用的CGI解決辦法。FastCGI程序像常規CGI程序一樣運行,但是不會在每次請求時重新啟動,而是通過監聽端口一直運行著,等待Nginx轉發請求。與CGI程序相比,FastCGI在進程優化上可以大幅優化性能。 在nginx中,解析php需要用到fastcgi模塊。其配置方式如下:
location ~ \.php$ {
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
include        fastcgi_params;
}
配置實例:當客戶端請求一個PHP文件時,必須將處理權轉交給Php?cgi進程。在配置成功之后,如果客戶端請求的URL中存在.php,則會自動被參數設置處理,從而轉交處理權。在這個過程中,Nginx會將主體(也就是php代碼)發送給FastCGI進程,FastCGI進程會解析執行,將執行結果返回給Nginx。 PHP處理方式之2:PHP-FPM PHP-FPM全稱為PHP FastCGI Process Manager。它是一個FastCGI實現的進程管理器,不同于PHP的前輩process manager – php-cgi。與php-fpm相比,php-cgi在處理靜態文件時效率較低。 PHP-FPM通過解析客戶端的PHP請求,將請求分配給不同的進程組來處理。PHP-FPM的一個進程組是由一個主進程和一些工作進程(池)組成的,主進程主要負責進程池的初始化、清理以及各種信號的處理等。 在nginx中,PHP-FPM的配置方式如下:
location ~ \.php$ {
# This is the socket configured in php-fpm pool
# Listen 127.0.0.1:9000 is relevant also
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# Set the SCRIPT_FILENAME variable
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# Pass other FastCGI parameters
include fastcgi_params;
}
配置實例:此方式需要先安裝php-fpm,并配置好監聽的端口或套接字文件,來接收請求,并將其分配給不同的進程組。Nginx會將客戶端的請求發送到php-fpm監聽的端口號,php-fpm解析執行后將處理結果返回給Nginx。 綜上所述,在Nginx中解析PHP有兩種方式,分別是FastCGI和FPM。兩種方式各有優缺點,需要結合實際情況進行選擇。通過Nginx與PHP之間良好的協調,可以使Web服務運行的更加穩定、快速、高效。