Linux下ThinkPHP網站目錄使用權限設定

來源:互聯網
上載者:User

標籤:des   style   blog   color   os   io   檔案   for   

在windows上運行好好的項目,遷移到Linux上就遇到了很多問題,其中最為重要的是網站目錄許可權的設定,當然簡單期間你可以用 命令

"chmod 777 -R you web site" ,這樣你就不用擔心項目啟動並執行時候會涉及到許可權問題。通常來說如果你的項目時部署在公網或者是部

署在租用的Linux伺服器上不建議這麼做,應為如果這樣設定了那麼任何使用者都可以對這個網站下的檔案,目錄進行操作,這樣也會影響網站的運營,

同樣不安全。下面以ubuntu14.4 系統為主進行分析。

最簡單的做法如下,這裡不建議這麼做(例如你的網站部署目錄為/var/www/html):

chmod 777 -R /var/www/html/demo

在ubuntu 安裝完apache 之後,預設會往系統中增加www-data 使用者 和 www-data 使用者組,同樣你可以用 ps -ef | grep apache 查看 apache 進程,你會發現apache的

主進程是用root使用者啟動的,那麼子線程的使用者都是 www-data 這個使用者。

這樣你就可以理解為這個apache伺服器啟動並執行使用者和使用者組是www-data,假設網站的使用者為demo,項目的目錄為/var/www/html/demo

接下來就分幾個步驟來設定(用root使用者執行下面的命令):

1.首先把網站的的目錄和檔案的所有者設定為demo,所屬組設定為www-data ,對與Linux命令不熟悉的,可以到網上查詢。

chown -R demo:www-data /var/www/html/demo

2.設定網站目錄許可權為750,750是demo這個使用者對目錄擁有讀寫執行的許可權,這樣demo使用者可以在任何目錄下建立檔案,使用者組有有讀執行許可權,這樣就有進入目錄的許可權,其它使用者沒有任何許可權。

chmod 750 /var/www/html/democd  /var/www/html/demofind -type d -exec chmod 750 {} \;

3.設定網站檔案許可權為640,640指只有demo使用者對網站檔案有更改的許可權,apache伺服器只有讀取檔案的許可權,無法變更檔,其它使用者無任何許可權。

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

4.需要針對個別目錄來設定許可權,以Thinkphp為例,它的Runtime 目錄存放的有記錄檔,還有與資料庫做ORM映射的資料庫表資訊,這說明apache伺服器要對這些目錄

有訪問的許可權,並且對於線面的記錄檔有寫入的許可權,那麼這樣就需要對於這些特殊目錄設定。

cd /var/www/html/demofind . -name "Runtime" -type d -exec chmod -R 770 {} \;

執行上面的命令請注意 “{}”與 “\”之間是有空格的,上面的-R參數是遞迴給Runtime 目錄下面的目錄和檔案賦予 770 許可權,當然了你會說記錄檔是不需要執行許可權的,

不過這裡沒關係,當你把記錄檔刪除掉之後,產生出來的檔案是沒執行許可權的。因為當你把記錄檔刪除掉之後,那麼組建記錄檔檔案的的使用者和所有者都是www-data,

所以新的記錄檔許可權就會變成下面這樣:

這樣整個網站你就可以通過這種方式管理起來了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.