Php 本地主机、apache和Macintosh

Php 本地主机、apache和Macintosh,php,apache,localhost,Php,Apache,Localhost,这里是服务器/端口noob。我刚刚为我的Mac OS X Lion下载了最新的Apache。当我输入http://localhost/(没有空格)时,它会显示一个网页,上面写着“它可以工作”。然而,我无法打开任何其他网页。我试图让它读取一个移动web应用程序的PHP文档,但它一直在404,并说该文档不存在(到目前为止,它读取的唯一文档是index.html文档,它说“它可以工作”)。我尝试过http://local host/User/directoryofmileapp/index.php之类

这里是服务器/端口noob。我刚刚为我的Mac OS X Lion下载了最新的Apache。当我输入http://localhost/(没有空格)时,它会显示一个网页,上面写着“它可以工作”。然而,我无法打开任何其他网页。我试图让它读取一个移动web应用程序的PHP文档,但它一直在404,并说该文档不存在(到目前为止,它读取的唯一文档是index.html文档,它说“它可以工作”)。我尝试过http://local host/User/directoryofmileapp/index.php之类的东西,然后我尝试过将移动应用程序的副本放入带有“It works”html文档的文件夹中,但它仍然无法识别它。“It works”文档的路径是/Library/WebServer/Documents/index.html.en,但这些信息对我还没有帮助。我尝试了很多不同的URL来访问Mac上的文档,但都没有用


提前谢谢!谢谢你的帮助

Mac OSX(Lion+至少)上apache的默认文档根目录是

您需要将文档放在此处,以便能够从浏览器访问它们,或者更改apache配置,将文档根指向计算机上的相应目录

您还必须确保Web服务器具有读取您试图通过internet提供服务的文件的权限。例如,以下目录结构表示我的Mac的/Library/WebServer/Documents/目录:

-rw-r--r--  1 root  wheel  31958 Jun 20  2012 PoweredByMacOSXLarge.gif
-rw-r--r--  1 root  wheel   3726 Jun 20  2012 PoweredByMacOSX.gif
-rw-r--r--  1 root  wheel     44 Jul 31 13:53 index.html.en
-rw-r--r--  1 root  wheel     44 Jan  7 16:00 index.php
由于apache在我的机器上以Root用户身份运行(顺便说一句,apache不应该以特权用户身份运行,但是我的Web服务器不暴露于internet,因此在我的情况下风险很小),它可以读取目录中的所有文件,当我将浏览器指向http://localhost/index.php时,我看到index.php的内容:

<?php
    echo '<h1>This also works</h1>';
?>

更改index.html.en的内容 把这个放进去

<?php
phpinfo();
?>


如果这样做有效,它应该告诉您php确实设置正确,并且您的所有目录都在哪里

如果您希望进行一些php开发,我建议您使用所谓的MAMP堆栈进行设置。它代表Mac、Apache、PHP和MySQL

这里有一个很棒的(免费)程序,可以让您轻松设置:

通过MAMP的easy界面,您可以手动将Apache文档根目录设置到Mac上的任何位置,这样您就可以开始在本地提供文件


一旦您对配置和服务器端技术感到更舒服一点,我就不推荐Vagrant了(http://www.vagrantup.com). 它允许您设置和配置虚拟服务器。我所有的PHP开发都是在LAMP堆栈上进行的,我拥有完全的控制权。这是一次很好的学习经历。使用Puppet和Chef之类的资源调配工具,您可以在任何机器上部署您的开发环境。

要手动安装所有内容,请尝试MAMP或XAMPP之类的软件包?可能会更容易:)这个问题可能更适合,因为它与编程没有直接关系,而是在您的系统上设置Apache和PHP。我几乎在我找到的每个地方编辑文档,包括Library/WebServer/documents(index.html.en),但现在我发现我的localhost URL没有改变。我甚至找到了该文档的多个版本。我可以使用sudo编辑和保存文档,并且我确实在etc文件夹中启用了PHP(虽然我认为这不是问题),但是localhost仍然只是说“它可以工作!”因此,我怀疑我是否编辑了正确的文件,但我仍然找不到我的浏览器正在读取的文件……没关系。我尝试了一种经过时间考验的重新启动电脑的方法,现在它开始工作了。谢谢@user1956177对不起,我没给你回电话。。。睡眠和所有这些。。。重新启动旧电脑似乎从未失败过。很高兴一切顺利!如果您觉得其中一个答案对您有帮助,请+1和/或接受它,以便它可以帮助其他人。
<?php
phpinfo();
?>