2009-02-09 114 views
24

简单的问题,但由于某些原因,我无法找到谷歌确切的答案:如何在Ubuntu中创建一个公共HTML文件夹?

我有一个新的Ubuntu安装上Slicehost,想做出公开目录在我家目录包含一个简单的网站一堆静态HTML文件。我该怎么做呢?这只是一个输入mkdir public_html并设置权限的问题,还是有更清晰的方法? (我记得以前我已经在那里我每次拷贝一个文件到我的public_html目录的问题,我将不得不手动设置其权限,这是很令人沮丧。)

+1

你安装了apache吗? – 2009-02-09 00:26:41

+0

是的,我按照下面的说明和一切工作。感谢大家。对不起,如果问题是离题。如果你愿意,你可以关闭这个问题。 – RexE 2009-02-09 00:51:42

回答

31

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

sudo a2enmod userdir 
sudo service apache2 reload 

第一个命令允许用户目录阿帕奇国防部,这不正是你想要的东西。第二个重新加载apache配置,以便它开始使用新的配置。

要安装的Apache2:

sudo apt-get install apache2 

当然,你还需要确保在您的public_html文件夹的权限允许www数据用户看到在那里的文件 - 755通常工作好。要做到这一点:

mkdir ~/public_html 
chmod -R 755 ~/public_html 

这将递归(-R)通过你的public_html并设置权限为755(所有者的rwx,以及团体和其他R-X,R-X)。

+0

但我应该在哪里放置public_html文件夹?在/ var/www /?下 – Dejell 2013-10-03 19:07:17

2

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

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

9

其他的答案是正确的轨道上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的配置文件中

顺便说一下,这种问题更适合Slicehost论坛。

相关问题