欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nginx里集成php模塊安裝配置步驟詳解

 更新時(shí)間:2023年08月06日 15:37:46   作者:SH沐瞳  
這篇文章主要為大家介紹了nginx里集成php模塊安裝配置步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

引言

nginx是一個(gè)高性能的web服務(wù)器,它可以處理靜態(tài)文件和反向代理的請(qǐng)求,但是它不知道如何運(yùn)行php腳本。為了讓nginx能夠支持php,我們需要使用一個(gè)php模塊,比如php-fpm(FastCGI Process Manager),它可以在nginx外部創(chuàng)建自己的進(jìn)程,然后通過(guò)FastCGI協(xié)議與nginx通信。這樣,當(dāng)用戶請(qǐng)求一個(gè)php頁(yè)面時(shí),nginx就會(huì)把請(qǐng)求轉(zhuǎn)發(fā)給php-fpm,然后把php-fpm返回的結(jié)果發(fā)送給用戶。這種方式比傳統(tǒng)的CGI或者mod_php更快更節(jié)省資源,也更方便管理和配置。

要在nginx里集成php模塊,需要完成以下幾個(gè)步驟:

第一步:安裝php-fpm

我們假設(shè)已經(jīng)安裝了最新版本的php(>= 7.3),那么可以使用apt-get命令來(lái)安裝php-fpm:

sudo apt-get install php7.3-fpm

安裝完成后,php-fpm服務(wù)會(huì)自動(dòng)啟動(dòng),可以使用systemctl命令來(lái)查看它的狀態(tài):

systemctl status php7.3-fpm

應(yīng)該看到類似這樣的輸出:

php7.3-fpm.service - The PHP 7.3 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.3-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-02-17 06:29:31 UTC; 30s ago
     Docs: man:php-fpm7.3(8)
 Main PID: 32210 (php-fpm7.3)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
    Tasks: 3 (limit: 1152)
   CGroup: /system.slice/php7.3-fpm.service
           ├─32210 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)
           ├─32235 php-fpm: pool www
           └─32236 php-fpm: pool www

第二步:配置php-fpm池

php-fpm服務(wù)會(huì)創(chuàng)建一個(gè)默認(rèn)的池,它的配置文件(www.conf)可以在/etc/php/7.3/fpm/pool.d目錄下找到。可以根據(jù)的需求來(lái)修改默認(rèn)的池,或者創(chuàng)建新的池。一般來(lái)說(shuō),建議為每個(gè)網(wǎng)站或者應(yīng)用創(chuàng)建單獨(dú)的池,這樣可以更好地控制每個(gè)php-fpm進(jìn)程的資源分配和權(quán)限。

在這里,我們假設(shè)只有一個(gè)網(wǎng)站或者應(yīng)用,那么可以使用默認(rèn)的池。需要注意以下幾個(gè)重要的參數(shù):

  • user和group:指定運(yùn)行php-fpm進(jìn)程的用戶和組,默認(rèn)是www-data,可以根據(jù)的實(shí)際情況進(jìn)行修改。
  • listen:指定監(jiān)聽(tīng)請(qǐng)求的方式,可以是tcp端口(例如127.0.0.1:9000)或者unix套接字(例如/var/run/php/php7.3-fpm.sock)。一般來(lái)說(shuō),使用unix套接字會(huì)更快更安全。
  • pm:指定進(jìn)程管理器的模式,可以是static(固定數(shù)量)、dynamic(動(dòng)態(tài)調(diào)整)或者ondemand(按需啟動(dòng))。一般來(lái)說(shuō),dynamic模式比較適合大多數(shù)場(chǎng)景。
  • pm.max_children:指定最大允許的子進(jìn)程數(shù)量,這個(gè)值取決于的服務(wù)器性能和負(fù)載情況。
  • pm.start_servers:指定啟動(dòng)時(shí)創(chuàng)建的子進(jìn)程數(shù)量,在dynamic模式下有效。
  • pm.min_spare_servers:指定最小空閑子進(jìn)程數(shù)量,在dynamic模式下有效。
  • pm.max_spare_servers:指定最大空閑子進(jìn)程數(shù)量,在dynamic模式下有效。
  • pm.max_requests:指定每個(gè)子進(jìn)程處理的最大請(qǐng)求數(shù),在達(dá)到該值后會(huì)重啟子進(jìn)程,防止內(nèi)存泄漏。

可以根據(jù)的實(shí)際情況進(jìn)行調(diào)整,或者使用默認(rèn)的值。修改完配置文件后,需要重啟php-fpm服務(wù):

sudo systemctl restart php7.3-fpm

第三步:配置nginx

要讓nginx能夠與php-fpm通信,需要在nginx的配置文件中添加一些指令。可以在/etc/nginx/sites-available目錄下創(chuàng)建一個(gè)新的配置文件,或者修改默認(rèn)的配置文件(default)。在這里,我們假設(shè)創(chuàng)建了一個(gè)名為example.com的配置文件,它的內(nèi)容如下:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com;
    index index.php;
    location / {
        try_files $uri $uri/ /index.php?$args;
    }
    location ~ \.php$ {
        include fastcgi.conf;
        fastcgi_pass unix:/run/php/php7.3-fpm.sock;
        fastcgi_buffers 16 16k;
        fastcgi_buffer_size 32k;
    }
}

這個(gè)配置文件的含義如下:

  • listen 80:指定監(jiān)聽(tīng)80端口。
  • server_name example.com www.example.com:指定處理example.com和www.example.com域名的請(qǐng)求。
  • root /var/www/example.com:指定網(wǎng)站的根目錄。
  • index index.php:指定默認(rèn)的索引文件。
  • location /:匹配所有的請(qǐng)求,使用try_files指令來(lái)檢查請(qǐng)求的文件是否存在,如果不存在,則重寫(xiě)到index.php文件。
  • location ~ .php$:匹配所有以.php結(jié)尾的請(qǐng)求,使用include指令來(lái)引入fastcgi.conf文件,它包含了一些通用的FastCGI參數(shù)。然后使用fastcgi_pass指令來(lái)指定php-fpm監(jiān)聽(tīng)的unix套接字。最后使用fastcgi_buffers和fastcgi_buffer_size指令來(lái)調(diào)整緩沖區(qū)的大小。

修改完配置文件后,需要?jiǎng)?chuàng)建一個(gè)軟鏈接到/etc/nginx/sites-enabled目錄,以便nginx能夠讀取它:

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

然后需要測(cè)試nginx的配置是否正確:

sudo nginx -t

如果沒(méi)有錯(cuò)誤,應(yīng)該看到類似這樣的輸出:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

最后,需要重啟nginx服務(wù):

sudo systemctl restart nginx

第四步:測(cè)試nginx和php-fpm

要測(cè)試nginx和php-fpm是否正常工作,可以在網(wǎng)站根目錄下創(chuàng)建一個(gè)名為info.php的文件,它的內(nèi)容如下:

<?php
phpinfo();
?>

然后可以通過(guò)瀏覽器訪問(wèn)example.com/info.php,應(yīng)該看到類似這樣的頁(yè)面:

這個(gè)頁(yè)面顯示了php的一些信息,證明了nginx和php-fpm已經(jīng)成功集成了。

以上就是nginx里集成php模塊安裝配置步驟詳解的詳細(xì)內(nèi)容,更多關(guān)于nginx集成php模塊的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 在Linux和Windows系統(tǒng)上安裝Nginx服務(wù)器的教程

    在Linux和Windows系統(tǒng)上安裝Nginx服務(wù)器的教程

    這篇文章主要介紹了在Linux和Windows系統(tǒng)上安裝Nginx服務(wù)器的教程,Linux系統(tǒng)這里以CentOS為代表,需要的朋友可以參考下
    2015-08-08
  • Nginx進(jìn)程殺不完的解決方法

    Nginx進(jìn)程殺不完的解決方法

    這篇文章主要給大家介紹了Nginx進(jìn)程殺不完的解決方法,文中通過(guò)圖文結(jié)合的方式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,,需要的朋友可以參考下
    2023-12-12
  • Nginx出現(xiàn)“Too many open files”問(wèn)題的解決方法

    Nginx出現(xiàn)“Too many open files”問(wèn)題的解決方法

    在進(jìn)行壓力測(cè)試時(shí),自建CDN節(jié)點(diǎn)的Nginx可能會(huì)出現(xiàn)“Too many open files”錯(cuò)誤,這通常意味著Nginx嘗試打開(kāi)的文件數(shù)量超出了系統(tǒng)的限制,本文將詳細(xì)介紹如何識(shí)別和解決這一問(wèn)題,確保Nginx在負(fù)載較高時(shí)仍能正常運(yùn)行,需要的朋友可以參考下
    2024-10-10
  • Nginx服務(wù)器如何設(shè)置url鏈接

    Nginx服務(wù)器如何設(shè)置url鏈接

    這篇文章主要介紹了Nginx服務(wù)器如何設(shè)置url鏈接,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Nginx通過(guò)header中的標(biāo)識(shí)進(jìn)行分發(fā)

    Nginx通過(guò)header中的標(biāo)識(shí)進(jìn)行分發(fā)

    本文主要介紹了Nginx通過(guò)header中的標(biāo)識(shí)進(jìn)行分發(fā),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Nginx?Proxy?Manager的具體實(shí)現(xiàn)

    Nginx?Proxy?Manager的具體實(shí)現(xiàn)

    Nginx?Proxy?Manager?就是一個(gè)?Nginx?的代理管理器,本文主要介紹了Nginx?Proxy?Manager的具體實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-05-05
  • 服務(wù)器nginx配置ssl并http重定向到https方式

    服務(wù)器nginx配置ssl并http重定向到https方式

    這篇文章主要介紹了服務(wù)器nginx配置ssl并http重定向到https方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • nginx配置ssl實(shí)現(xiàn)https訪問(wèn)的步驟(適合新手)

    nginx配置ssl實(shí)現(xiàn)https訪問(wèn)的步驟(適合新手)

    這篇文章主要給大家介紹了關(guān)于nginx配置ssl實(shí)現(xiàn)https訪問(wèn)的相關(guān)資料,這個(gè)教程非常適合新手小白,文中通過(guò)示例代碼將實(shí)現(xiàn)的方法一步步介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧
    2018-12-12
  • nginx?反向代理負(fù)載均衡策略配置SSL訪問(wèn)匹配規(guī)則優(yōu)先級(jí)

    nginx?反向代理負(fù)載均衡策略配置SSL訪問(wèn)匹配規(guī)則優(yōu)先級(jí)

    本文主要包含1.Nginx配置文件詳解2.Nginx實(shí)現(xiàn)負(fù)載均衡3.Nginx前端項(xiàng)目部署4.Nginx配置SSL訪問(wèn)5.nginx匹配規(guī)則說(shuō)明以及匹配的優(yōu)先級(jí)的內(nèi)容詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • 使用Nginx?+?Keepalived?實(shí)現(xiàn)高可用?Web?負(fù)載均衡筆記(虛擬機(jī))

    使用Nginx?+?Keepalived?實(shí)現(xiàn)高可用?Web?負(fù)載均衡筆記(虛擬機(jī))

    這篇文章主要介紹了使用Nginx?+?Keepalived?實(shí)現(xiàn)高可用?Web?負(fù)載均衡筆記,需要的朋友可以參考下
    2023-08-08

最新評(píng)論