linux 下php 伺服器許可權問題

2021-07-25 06:58:42 字數 1113 閱讀 3009

該段落出處:

來自開源中國社群—-關於linux下php許可權問題

要設定安全的許可權系統,你要先弄清楚以下幾個問題:

1. **的檔案所有者帳號是什麼?

2. apache/php-fpm以什麼帳號身份執行?

針對這個問題,建議的設定如下:

1. **所有者,可設定為ftp, www帳號

2. nginx/php-fpm/apache,建議以nobody帳號執行,反正不能使用**檔案所有者帳號。

3. 需要可寫許可權的目錄,手工設定許可權為777即可

4. php生成的日誌、附件檔案的所有者會是nobody, 這時www,ftp帳號卻無法修改、刪除這些檔案。

那麼在php生成檔案時,可呼叫chmod($filename, 0777)。即解鈐還需繫鈐人。

這樣,php指令碼只能向指定的目錄中寫入檔案,一方面規範了程式**的行為,另一方面,也一定程度上提高了**的安裝性。

許可權配置:

**目錄檔案許可權的設定對**的安全至關重要,下面簡單介紹**目錄檔案許可權的基本設定。

我們假設http伺服器執行的使用者和使用者組是www,**使用者為centos,**根目錄是/home/centos/web。

chown -r centos:www /home/centos/web

設定**目錄許可權為750,750是centos使用者對目錄擁有讀寫執行的許可權,這樣centos使用者可以在任何目錄

下建立檔案,使用者組有有讀執行許可權,這樣才能進入目錄,其它使用者沒有任何許可權。

find -type d -exec chmod 750 {} \;

設定**檔案許可權為640,640指只有centos使用者對**檔案有更改的許可權,http伺服器只有讀取檔案的許可權,

無法更改檔案,其它使用者無任何許可權。

find -not -type d -exec chmod 640 {} \;

針對個別目錄設定可寫許可權。比如**的一些快取目錄就需要給http服務有寫入許可權。例如discuz x2的/data/目錄

就必須要寫入許可權。

find

data -type d -exec chmod 770 {} \;

Linux下CVS伺服器

2.在 etc xinetd.d下面建立乙個檔案cvspserver,其內容如下 service cvspserver 其中cvs命令在 usr bin目錄下,而設定cvs工作根目錄是 cvs。3.重新啟動xinetd超級伺服器,使用下面命令 etc init.d xinetd restart 4....

DEDECMS在linux伺服器 許可權設定

站點上級目錄 如果要使用後台的目錄相關的功能需要有列出目錄的許可權 0444 站點根目錄 需要執行和讀取許可權 如果要在根目錄下面建立檔案和目錄的話需要有寫入許可權 0755 install 安裝程式目錄 需要有執行和讀取許可權 建議安裝完成以後刪除或者改名 0555 dede 後台程式目錄 需要有...

Linux 伺服器 php版本公升級

現在的php版本是5.6,由於專案的php版本要求是7.2,所以公升級一下 1.檢查當前安裝的 php 檢視當前 php 版本 php v 檢視當前 php 相關的安裝包 yum list installed grep php 2.更換 rpm 源 centos 5.x rpm uvh centos...