我刚刚根据此处的说明安装并配置了Apache,PHP和MySQL:http://danilo.ariadoss.com/how-to-setup-apache-php-mysql-on-mac-os-x-105-leopard/
除了我按照此处的说明安装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(内部服务器错误):>服务器尝试满足请求时遇到意外情况。
在配置Apache,PHP和MySQL之前,这些子目录都位于~/Sites
中。
配置Apache,PHP和MySQL之后,我在~/Sites
(~/Sites/test
)中创建了另一个目录,看来我可以通过localhost/test
连接到该目录(显示~/Sites/test
中index.php文件的内容将浏览器定向到localhost/test
时)。
换句话说,我无法连接到旧的~/Sites
子目录,但是由于某些原因,我可以连接到新的~/Sites
子目录。我将旧子目录的所有内容移至新的(空)子目录,然后尝试连接到新的子目录,但遇到相同的错误。
在根据上述说明配置Apache,PHP和MySQL之前,我正在使用MAMP运行Sites子目录。可能与此错误消息有关吗?
我正在运行Mac OS X 10.6.8。
在此先感谢您的帮助。
最佳答案
这看起来像文件权限问题。也许MAMP下的文件具有不同的权限,不允许您的新安装的Apache访问。
错误的.htaccess
文件通常还导致500个错误。这些是隐藏的配置文件,即使您清空目录也可能仍然存在。尝试在Finder中启用隐藏文件的视图,然后在有问题的子目录中浏览。让我知道你是否有看到。
如果不是,我们将不得不检查您的旧子目录权限并将它们与新的子目录权限进行比较,以查看是否存在差异。如果权限不同,它说明了为什么系统不允许Apache访问这些文件。这可以通过终端使用ls -l
命令来完成。我使用的是Linux,已经有一段时间没有接触Mac了,但是我认为您还可以通过右键单击并选择“属性”来查看文件的权限(文件属于哪个用户等)。
让我知道这是否有意义。