溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php+nginx項目中權(quán)限的示例分析

發(fā)布時間:2021-08-06 09:46:17 來源:億速云 閱讀:154 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹了php+nginx項目中權(quán)限的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

nginx/php-fpm

進程權(quán)限

  • 主進程用戶為啟動的用戶

  • 子進程

1、nginx的用戶為nginx.conf中配置的用戶

2、php-fpm的用戶為php-fpm.conf中配置的用戶

如:啟動nginx的是root,nginx中配置的user是nginx,那主進程就是root,子進程就是nginx

處理方式

以下訪問均以nginx子進程進行

靜態(tài)文件

  • 步驟:nginx訪問/index.html時,nginx會直接訪問對應(yīng)文件,并將內(nèi)容返回給請求的客戶端。

  • 權(quán)限情況:此時只需要nginx擁有index.html文件的權(quán)限即可。

php腳本文件

步驟:

  • nginx訪問/index.php時,nginx為了能夠把正確的腳本處理結(jié)果返回給客戶端,需要進行配置告訴nginx.php是非靜態(tài)文件,需要php腳本解析器進行處理后才能返回內(nèi)容。

  • 一般來講會在nginx配置中加上類似fastcgi_pass unix:/var/run/php5-fpm.sock;這樣的配置項,指明nginx在遇到訪問腳本文件時需要去找誰,之后會訪問該文件做到將請求轉(zhuǎn)發(fā)至php-fpm。

  • 由php-fpm訪問真正的php腳本文件,將結(jié)果返回值nginx,再有nginx將結(jié)果返回至客戶端。

權(quán)限情況:

  • nginx需要有/var/run/php5-fpm.sock文件權(quán)限;

  • php-fpm需要有/index.php文件權(quán)限;

用戶配置位置

nginx用戶設(shè)置在nginx.conf中第一行的user

php-fpm用戶設(shè)置在php-fpm.conf中的

  • listen.owner = xxx;設(shè)置unix socket用戶

  • user = xxx設(shè)置進程啟動用戶

注:以上兩個配置文件不同的操作系統(tǒng)下文件名略有不同,請根據(jù)自身安裝情況自行判斷。

nginx轉(zhuǎn)發(fā)內(nèi)容到php-fpm不只有/var/run/php5-fpm.sock的方式,在php-fpm.conf中還可以通過配置改為xxx.xxx.xxx:9000等方式

; The address on which to accept FastCGI requests.
; Valid syntaxes are:
; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific IPv4 address on
;       a specific port;
; '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on
;       a specific port;
; 'port'     - to listen on a TCP socket to all IPv4 addresses on a
;       specific port;
; '[::]:port'   - to listen on a TCP socket to all addresses
;       (IPv6 and IPv4-mapped) on a specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = /var/run/php5-fpm.sock

其他

比較特別的點,一般nginx都是用root用戶啟動的(為了獲取80端口權(quán)限),如果本地開發(fā)nginx是用普通用戶重啟,那么主進程和子進程都會是當前用戶,nginx.conf中的配置不再起效,暫不清楚原因。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“php+nginx項目中權(quán)限的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI