1

我最近根据此处的说明安装和配置了 Apache、PHP 和 MySQL:http: //danilo.ariadoss.com/how-to-setup-apache-php-mysql-on-mac-os-x-105-豹/

除了我按照此处的说明安装了 MySQL(包括 StartupItem 和 PreferencePane):http: //dev.mysql.com/doc/refman/5.5/en/macosx-installation-pkg.html

当我打开浏览器并导航到 localhost 时,~/Sites/index.html会显示我的页面。

但是,当我尝试通过 导航到我的任何~/Sites子目录localhost/subdir时,出现以下错误:

HTTP 错误 500(内部服务器错误):> 服务器尝试完成请求时遇到了意外情况。

~/Sites在我配置 Apache、PHP 和 MySQL 之前,这些子目录都在里面。

在配置 Apache、PHP 和 MySQL 之后,我在~/Sites( ~/Sites/test) 中创建了另一个目录,我似乎可以通过它连接到localhost/test该目录(其中 index.php 文件的内容~/Sites/test在将浏览器定向到 时显示localhost/test)。

换句话说,我无法连接到旧的~/Sites子目录,但由于某种原因,我可以连接到新的~/Sites子目录。我将旧子目录的所有内容移动到新的(空)子目录,然后尝试连接到新的子目录,但得到了同样的错误。

在根据上述说明配置 Apache、PHP 和 MySQL 之前,我使用 MAMP 运行我的站点子目录。这可能与此错误消息有关吗?

我正在运行 Mac OS X 10.6.8。

提前感谢您的帮助。

4

1 回答 1

0

这看起来像文件权限问题。也许 MAMP 下的文件具有不同的权限,您的新安装的 Apache 不允许访问。

500 错误通常也是由错误配置的.htaccess文件引起的。这些是隐藏的配置文件,即使您清空了一个目录,它们也可能仍然存在。尝试在 Finder 中启用隐藏文件的视图,然后在有问题的子目录中浏览。如果你看到任何东西,请告诉我。

如果不是,我们必须检查您的旧子目录权限并将它们与新的权限进行比较,看看是否有区别。如果权限不同,它解释了为什么您的系统不允许 Apache 访问这些文件。这可以通过终端使用ls -l命令来完成。我在 Linux 上并且有一段时间没有接触过 Mac,但我认为您还可以通过右键单击并选择属性来查看文件的权限(它属于哪个用户等)。

让我知道这是否有意义。

于 2012-05-27T05:16:56.447 回答