我该如何将 Mac OS X 系统上预装的 Apache 版本中的 DocumenRoot 更改为我选择的文件夹?

我该如何将 Mac OS X 系统上预装的 Apache 版本中的 DocumenRoot 更改为我选择的文件夹?

好的,所以我想利用安装在我的 Mac OS X 系统上的 Apache 服务器(这意味着,我不想安装我自己的 Apache 版本,我也可以尝试使用捆绑的版本),因此,我去更改配置文件中的某些设置:

/etc/apache2/httpd.conf

也就是说,我改变了这两行:

DocumentRoot "/Users/myusername/Sites"

<Directory "/Users/myusername/Sites">

因此它们最初指向我的 Dropbox 文件夹中的一个文件夹(这样我就可以将我的文档同步到我的 Dropbox):

DocumentRoot "/Users/myusername/Dropbox/public_html"

<Directory "/Users/myusername/Dropbox/public_html">

这不起作用。所以我想,好吧,也许要求将 Dropbox 中的文件夹设为我的文档根目录太过分了。所以我想,如果我将文档根目录设为我选择的另一个文件夹,如下所示:

DocumentRoot "/Users/myusername/dev-sites/public_html"

<Directory "/Users/myusername/dev-sites/public_html">

这也不起作用。在 httpd.conf 文件中寻找线索后,似乎只有两个目录似乎可以用作 Mac OS X 捆绑的 Apache 的文档根路径:

/Users/myusername/Sites  (or ~/Sites)

/Library/WebServer/Documents/

但尝试使用其他目录似乎不起作用。我的浏览器会收到 403 错误。我想知道是否需要更改 httpd.conf 文件上的其他设置或设置任何权限才能使其正常工作。

任何帮助都将不胜感激,并提前致谢。

答案1

检查您要使用的文件夹的权限,而不是 ~/Sites

答案2

如果此文件夹中没有索引(php|html|...)并且您希望 apache 显示文件列表,则需要启用索引。

您要么在 vhost 配置中放入“Option +Indexes”,要么在 vhost 中放入“AllowOverides All”,并在 DocumentRoot 目录中放入带有“Option +Indexes”的 .htaccess 文件。

相关内容