Linux下部署Symfoy2對app/cache和app/logs目錄的使用權限設定,symfoy2logs_PHP教程

來源:互聯網
上載者:User

Linux下部署Symfoy2對app/cache和app/logs目錄的使用權限設定,symfoy2logs


  在linux下部署完Symfony2,可能在訪問的時候會報app/logs或者app/cache目錄沒有寫入權限的錯誤。在linux下,如果我們在命令列登陸的使用者和web應用伺服器(apache、nginx等)的使用者不一樣的時候,

可以使用下面四個方法來解決這個問題。

  

  1、在支援chmod +a 的系統下使用ACL

  很多版本的linux系統都支援chmod +a命令,所以我們優先使用這個命令。找出web應用伺服器的使用者名稱賦值到變數HTTPDUSER上。

1 $ rm -rf app/cache/*2 $ rm -rf app/logs/*3 4 $ HTTPDUSER=`ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1`5 $ sudo chmod +a "$HTTPDUSER allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs6 $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs

  第四行命令是:找出web應用伺服器的使用者名稱賦值給變數HTTPDUSER;第五行命令是:賦予web應用伺服器對app/logs或者app/cache目錄讀、寫、建立目錄等許可權;第六行命令是:賦予命令列登陸使用者對app/logs或者app/cache目錄讀、寫、建立目錄等許可權。

  2、如果系統不支援chmod +a ,那麼就使用setfacl命令來設定ACL

  首先要確定目錄所在分區支援ACL和已經安裝setfacl命令。

1 $ HTTPDUSER=`ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1`2 $ sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX app/cache app/logs3 $ sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:`whoami`:rwX app/cache app/logs

  如果不起作用,在第二、三行命令添加 -n 選項。

  3、不使用ACL

  如果不是使用ACL,還可以改變umask,使這兩個目錄的使用者組有建立和修改檔案的許可權(775,並且web應用伺服器和命令列使用者在同一個組)或者所有使用者都擁有建立和修改檔案的許可權(777),但是這兩組許可權都是不安全的,給予的許可權過高。把下面的代碼添加到app/console, web/app.php 和 web/app_dev.php 檔案的首行。

1 umask(0002); // 產生的目錄(app/cache和app/logs)許可權為07752 3 // 或者4 5 umask(0000); // 產生的目錄(app/cache和app/logs)許可權為0777

  註:php的umask命令是非安全執行緒的。

  4、命令列登陸的使用者和web應用伺服器的使用者為同一個使用者。

    


tomcat中的xml檔案該怎配置

初學的話就配置個連接埠號碼 跟使用者權限就可以了~ 其他不用管
 


http://www.bkjia.com/PHPjc/894760.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/894760.htmlTechArticleLinux下部署Symfoy2對app/cache和app/logs目錄的使用權限設定,symfoy2logs 在linux下部署完Symfony2,可能在訪問的時候會報app/logs或者app/cache目錄沒有寫權...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.