28

简单的问题,但由于某种原因,我在谷歌上找不到确切的答案:

我在 Slicehost 上安装了一个全新的 Ubuntu,并想在我的主目录中为一个包含一堆静态 HTML 文件的简单网站创建一个公共目录。我该怎么做呢?只是键入mkdir public_html和设置权限的问题,还是有更清洁的方法?(我记得过去我遇到过问题,每次我将文件复制到我的 public_html 目录中时,我都必须手动设置其权限,这非常令人沮丧。)

4

3 回答 3

38

假设您已经安装了 apache,请执行以下操作:

sudo a2enmod userdir
sudo service apache2 reload

第一个命令启用 userdir apache mod,这正是您想要的。第二个重新加载 apache 配置,以便它开始使用新配置。

安装 apache2:

sudo apt-get install apache2

当然,您还需要确保您的 public_html 文件夹的权限允许 www-data 用户查看其中的文件——755 通常运行良好。去做这个:

mkdir ~/public_html
chmod -R 755 ~/public_html

这将递归 (-R) 遍历您的 public_html 并将权限设置为 755(所有者 rwx,以及组和其他 rx,rx)。

于 2009-02-09T00:38:50.667 回答
11

其他答案与. mod_userdir_ 例如,如果您希望您的文件可以在域根目录下访问,那么您需要放置指令http://www.yourdomain.com/~username//home/username/public_html/index.htmlhttp://www.yourdomain.com/~username/index.htmlhttp://www.yourdomain.com/index.html

DocumentRoot /home/username/public_html

在 Apache 配置文件中。

于 2009-02-09T00:44:10.937 回答
2

您需要为 Apache 使用mod_userdir/var/www/ ,否则您需要从或任何地方设置符号链接。

您的权限问题是因为 Apache 没有对您的文件的读取权限。您需要允许读取访问权限www-data(或任何用户;特定于发行版)。

于 2009-02-09T00:27:57.650 回答