作为 ubuntu 下 php 开发人员,设置文件和文件夹权限的最佳做法是什么?

作为 ubuntu 下 php 开发人员,设置文件和文件夹权限的最佳做法是什么?

我已经创建并设置了 /var/www/mywebsite 下的一些文件和文件夹的权限。

对于文件 644 和文件夹 755。

我是这些文件和文件夹的所有者,因为我在该目录下创建了它们。

但是,我无法写入和保存 /var/www/mywebsite 下的文件

如果我将权限更改为 777,我可以正常编辑它们,但如果我将它们上传到我的服务器,文件的权限将保持为 777,我必须将它们改回 755 和 644。这为整个开发过程增加了一个额外的步骤,我想知道在使用 php 项目和 ubuntu 时是否有更好的做法。我应该将 apache 的 web 文件夹移动到另一个目录,例如从那里移动到 home 和 work 吗?

以下是 ls -l /var/www 的输出

themhz@hal9000:~$ ls -l /var/www
total 10
drwxr-sr-x 18 themhz   root       4096 Μάι   3 05:58 mywebsite
drwsr-sr-x 18 themhz   root       4096 Οκτ  28  2013 agorasite.gr
drwsr-xr-x 17 themhz   themhz     4096 Οκτ  28  2013 agorasite
drwsr-xr-x 17 themhz   root       4096 Δεκ   9  2012 aimodosia
lrwxrwxrwx  1 root     root         22 Φεβ  14 09:25 apc.php -> /usr/share/php/apc.php
drwsr-xr-x  3 themhz   root       4096 Αύγ  30  2011 apolo
-rw-r--r--  1 themhz   root     297307 Φεβ  20  2013 background5.jpg
drwxr-sr-x  3 themhz   root       4096 Αύγ  17  2013 backups
drwsr-xr-x 10 themhz   root       4096 Ιούλ  2  2012 booking

在开发 php 应用程序和设置开发工作系统时,有什么最佳实践的建议或推荐吗?

我的系统运行的是 Ubuntu 12.04

谢谢

答案1

一个解决方案是在你的主目录中创建项目:

cd ~
mkdir my_project

my_project然后在 webroot 目录中创建一个链接:

sudo ln –s ~/my_project /var/www/.

现在复制my_project目录中的所有项目文件。
最后,如果 apache 需要在里面写入project,请更改组:

cd my_project
sudo chgrp www-data folder/to/change

每次添加文件或目录时可能需要运行此命令。

这使您可以在家中工作,而无需修改 webroot 上的权限。

相关内容