【问题标题】:How can I make a public HTML folder in Ubuntu?如何在 Ubuntu 中创建公共 HTML 文件夹?
【发布时间】:2010-10-06 07:39:52
【问题描述】:

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

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

【问题讨论】:

  • 是的,我按照以下说明进行操作,一切正常。感谢大家。对不起,如果这个问题是题外话。如果您愿意,可以关闭此问题。

标签: linux public-html


【解决方案1】:

mod_userdir 的其他答案都在正确的轨道上,但使用它将为您的网站提供基本 URL http://www.yourdomain.com/~username/ - 例如,文件 /home/username/public_html/index.html 可以作为 http://www.yourdomain.com/~username/index.html 访问。如果您希望您的文件可以在域根目录下访问,例如http://www.yourdomain.com/index.html,那么您需要放置指令

DocumentRoot /home/username/public_html

在 Apache 配置文件中。

【讨论】:

  • 如果我想把文件放在 /var/www/public_html 下怎么办?
  • 只使用它作为文档根目录。
【解决方案2】:

假设您已经安装了 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,以及组和其他 r-x、r-x)。

【讨论】:

  • 但是我应该把 public_html 文件夹放在哪里?在 /var/www/ 下?
  • 如上图mkdir ~/public_html将public_html文件放到用户家目录下。
  • 当我尝试 $sudo a2enmod userid 时,它给了我一个错误 Module userid doesn't exit! ,,但我已经在我的主目录中创建了它。如何解决?
【解决方案3】:

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

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

【讨论】:

    猜你喜欢
    • 2020-02-09
    • 2023-04-04
    • 2016-02-20
    • 2014-09-26
    • 2018-12-15
    • 1970-01-01
    • 2020-11-15
    • 2021-12-14
    相关资源
    最近更新 更多