日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

nginx php mysql分离,详解nginx、php-fpm和mysql用户权限

發布時間:2025/4/16 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 nginx php mysql分离,详解nginx、php-fpm和mysql用户权限 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

通常情況下,我們運行web應用的服務器有CentOS、Ubuntu、Debian等等的Linux發行版本。這時候,構成服務架構所必須的Nginx、php和MySQL等應用的權限控制就顯得非常重要,各個服務對代碼目錄的權限要求各不相同,缺少某些權限會造成服務無法讀寫或運行的錯誤,降低了權限要求又會存在被入侵修改的隱患。這里我們就來總結一下nginx、php-fpm和mysql等等這些服務的權限劃分。

一、web服務器Nginx權限

PHP的運行框架通常都是結合Nginx組成LNMP或者結合Apache組成LAMP的架構,這里用Nginx作為例子講述一下Nginx服務運行所需要的權限。

我們知道,Nginx本身不能解析PHP的語法,所以Nginx對于靜態文件(如HTML等)會直接解析返回結果,但是對于PHP的文件,Nginx會轉交給PHP的解釋器php-fpm進行處理,處理完后再返回響應給客戶端瀏覽器。

因此,我們代碼目錄下需要統一Nginx和php的服務所需權限。

①如果統一使用root用戶,則一般游客賬戶無法訪問應用,而nginx配置成以root運行的話會存在很大的安全隱患,一旦被攻擊就會被獲取root身份進行系統的一切操作。

②而如果統一將代碼目錄權限全部設置為rwxrwxrwx,則存在用戶直接通過瀏覽器修改代碼目錄的隱患。

所以最好的辦法就是統一歸類到一個新的用戶組里面,通過給該用戶組分配Nginx和php運行必要的權限,來實現對web應用的權限目錄管理。通常情況下,許多團隊都會把這個用戶組取名www,由www用戶來統一管理代碼目錄權限。

我們可以看到Nginx的配置文件nginix.conf里面劃分的運行權限就是配置到了www用戶下,因此Nginx的子進程也是由www用戶執行,可以通過ps aux | grep nginx來查看:

可以看到nginx的主進程是root,其余子進程均是www的用戶

nginx.conf的配置:

二、php的權限配置

同樣的,php的運行方式也是由主進程root運行,在子進程池(pool)里面配置由www用戶執行,具體配置在php根目錄下的etcphp-fpm.conf下,添加兩行:

user = www

group = www

即可,同樣用ps aux | grep php可以查看進程使用的用戶身份:

三、MySQL服務的權限配置

通過ps aux | grep mysql可以看到MySQL服務是運行在mysql用戶下的,該服務只需要我們在php代碼連接mysql時帶上mysql的用戶名密碼即可,不需要統一為www,因為數據層需要與業務邏輯層隔離開,保證底層數據的安全。mysql的授權主要是在mysql服務內新增用戶和劃分權限,用來控制php不同業務以不同權限范圍的身份去連接,確保數據安全。

四、總結

nginx配置:

user www www;

php-fpm:

user = www

group = www

轉自:https://blog.csdn.net/dream_successor/article/details/78615825?locationNum=8&fps=1

總結

以上是生活随笔為你收集整理的nginx php mysql分离,详解nginx、php-fpm和mysql用户权限的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。