好的,所以我想利用安装在我的 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 文件。