我最近开始使用 Ubuntu 作为 LAMP 服务器。我见过很多教程说将文件放在“/var/www/”中,我也见过其他教程将文件放在“/home/$USER/public_html/”中。
在我测试和解决问题的过程中,我成功地从每个位置查看了一个测试站点 URL。
哪一个更好?我想也许这只是个人喜好问题。但我越想越想,我越想把我的所有工作都保存在主文件夹中。
答案1
差异如下:
如果您将其留在 /var/www 中,您将遇到一些必须处理的权限问题。在您的主文件夹中,您是控制者,因为默认情况下,其中的所有文件都归您所有。
一些用户将 /home 文件夹放在另一个分区中,这意味着如果您碰巧格式化根分区并将主分区单独留作升级,则为 +1。
如果您将其放在主文件夹中,则无需添加用户
/var/www
或更改其权限。例如,它将/var/www
是/home/USER/www
。如果您需要通过 Samba 共享文件,那么在 /home 中执行此操作比在 /home 外部执行要容易得多。
还有很多原因,但这些是我现在最先想到的。
答案2
一般来说,这取决于你正在做什么样的开发。如果纯粹是个人用途或用于学习/测试目的,那么将其放在 ~/public_html 中就可以了 - 就 Web 服务器而言,这没有什么区别,而且你不会遇到任何权限问题。但如果你的开发需要部署到其他服务器,而这些服务器可能与你的开发环境不匹配,那么在 /var/www 中测试它是一个非常好的主意。
我通常在 ~/local/src/ 下的 bazaar 分支中进行 Web 开发,然后使用 bzr push 将完成的代码复制到 /var/www 下的文件夹中进行测试。在那里进行合理测试后,我可以使用 bzr-upload 将代码推送到我的实际生产服务器。这可确保部署的所有内容都已签入并经过测试,保持 /var/www 干净,并将所有工作源代码保留在我的主目录中。
答案3
如果您且只有您更改内容,则在您的主文件夹中可能是最好的选择。/var/www/public_html
更标准,并且有效,如果用户目录指令已关闭。
经验法则:如果多个人要更改内容,最好将其放入/var/www/public_html
并设置该文件夹组可写,以允许所有发布内容的用户在那里写入。
否则,根据其他答案中给出的原因,任何一个位置都可以。