配置FTP和Apache的权限


10

我有一个Web服务器(Apache2),可以通过FileZilla访问。

在我的Web服务器上,我有一个目录/ home / admin / www,该目录已绑定到/ var / www。这样我就可以使用FTP访问它。这很完美!

但是,每次我重新启动Web服务器时,都必须一次又一次地进行绑定。我不能对我的网络服务器说那些地图需要始终绑定吗?另外,我需要每次重新设置所有权限,我在做什么错?

Answers:


13

更好,更安全的解决方案(我对访问管理员主文件夹的互联网感到不安!)是在/中创建一个webroot文件夹

码头时间!

cd /
sudo mkdir /webroot
sudo groupadd webdev
sudo usermod -a -G webdev yourusername 
sudo chown www-data:webdev /webroot/

现在,将apache指向apache配置底部的新文档根目录/ webroot。可以在这里找到:/etc/apache2/apache2.conf

sudo nano /etc/apache2/apache2.conf

CTRL-O保存,如果您不熟悉,则CTRL-X退出nano。

只需替换DocumentRoot /var/www//webroot/

现在将您的Web文件复制到Webroot。

sudo /etc/init.d/apache2 reload

现在,Apache应该已经重新启动并加载了所有配置。

这已经在apache2拥有的根目录中创建了一个名为webroot的目录,并且组所有者是新的组webdev,您的用户现在被追加到该组的成员(这不会替换任何组!)。这将允许您编辑FTP中的文件!

对于一个网站的apache服务器,这是一个非常简单的解决方案。如果您计划运行多个站点,则需要进行更多工作(例如,在webroot中为它们创建单独的文件夹)

这样做的好处是,如果有人确实发现了漏洞,他们将被锁定在webroot文件夹中,而不是您的主文件夹中!另外,如果您需要允许更多用户修改站点,则可以使用以下命令将其用户添加到webdev组:sudo usermod -a -G theirusername webdev

希望这可以帮助!

亲切的问候


没问题:)您介意我是否重命名标题以更好地反映我给出的答案?
Laice 2011年

当然不是:-)
Ontwikkelaar Bij

由于某些原因,当我使用您的命令> sudo groupadd webdev时,我没有得到这样的用户webdev,我尝试了一下,它似乎起作用了。无论如何,将用户添加到/ etc / group文件中。须藤usermod命令-a wwwlogin -G Webdev的
拿雅

这是我的错,我的回答是无意间切换了用户和组,Damon纠正了这一点,吸取了教训!
Laice

@Damon,我认为您需要设置适当的权限,以便所有者(www-data)和组(webdev)具有与目录相同的权限:应为775(而不是默认的755)和664(而不是644) )的文件。
Eduardo B.
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.