Magento2 Permissions – Folder and File Settings

magento2permissions

I suspect that the permissions might have gotten messed up on my Magento 2 installation. On the old versions I would run the following command to make folders 755 and files 644:

find . -type f -exec chmod -c 644 {} \; && find . -type d -exec chmod -c 755 {} \;

Can you please let me know what the correct file and folder permissions are for Magento 2 since they seem to be different? Also, if there are some particular folders or files that would need different permissions.

Best Answer

You can refer http://devdocs.magento.com/

The important things:

  • The owner of the Magento file system: Must have full control (read/write/execute) of all files and directories.

  • Must not be the webserver user; it should be a different user.

  • The web server user must have write access to the following files and directories:

    • var
    • app/etc
    • pub
    • (and probably new in 2.2.1:) generated
  • In addition, the web server's group must own the Magento file system so that the Magento user (who is in the group) can share access to files with the web server user. (This includes files created by the Magento Admin or other web-based utilities.)

  • We recommend setting the permissions as follows:

    • All directories have 770 permissions.

    • 770 permissions give full control (that is, read/write/execute) to the owner and to the group and no permissions to anyone else.

    • All files have 660 permissions.

    • 660 permissions mean the owner and the group can read and write but other users have no permissions.

You should set it as below:

cd <your Magento install dir> 

// 644 permission for files
find . -type f -exec chmod 644 {} \; 
                   
// 755 permission for directory
find . -type d -exec chmod 755 {} \;    

chmod 644 ./app/etc/*.xml

chown -R :<web server group> .

chmod u+x bin/magento

I hope this will help you.