如何让 php 在 Mac OS X 上运行?

问题描述 投票:0回答:4

我最近更新到 Lion 并在系统偏好设置中启用了 Web 共享,但我无法让 php 工作。

我向 Web 根目录添加了一个信息文件,它将文件输出为文本。

info.php
with the content
<?php phpinfo(); ?>
php macos osx-lion
4个回答
106
投票

(编辑:此方法似乎适用于 10.9 (Mavericks)、10.10 (Yosemite) 和 10.11 (El Capitan),所以我想我应该提及一下,对于任何新涌入的稍微沮丧的 OS X 更新程序:D )

编辑 /etc/apache2/httpd.conf 并确保该行:

LoadModule php5_module libexec/apache2/libphp5.so

...存在。我认为它在标准 OS X 配置中默认被注释掉了,但据我记得,你只需要取消注释它,然后重新启动 Apache:

sudo apachectl restart

你应该可以走了。


28
投票

更新: 请注意,这是为 OS X 之前(高)Sierra 编写的。如果您运行 OSX 10.12 或更高版本,请遵循 Andy Miller 的出色指南:macOS 10.15 Catalina Apache 设置:多个 PHP 版本


我也喜欢使用基本上已经存在的东西。当 Mac OS X 默认带有 apache 和 PHP 时,我不明白为什么有人会使用 MAMP 或 AMPPS(或任何其他打包的第三方开箱即用网络服务器应用程序)。

我尝试了几次才让它工作,所以这基本上是我所做的,希望它能帮助你们节省一点时间。

就像 Matt Gibson 所说,启动终端并输入:(sudo 需要您的 root 密码)

sudo nano /etc/apache2/httpd.conf

然后通过删除前面的“#”来取消注释该行(ctrl+v 可以用作向下翻页)

LoadModule php5_module libexec/apache2/libphp5.so

为了确保您可以在 PHP 中包含文件等,请滚动到“User _www”(在我的例子中)并将其更改为:(其中“yourusername”是您登录时使用的用户)

User yourusername

您可以按原样保留该组,在全新安装的 OS X Mountain Lion 上默认为“Group _www”。

在默认情况下,apache 只查找index.html,因此搜索“DirectoryIndex index.html”并将其更改为:(当然,在末尾添加index.html 是可选的)

DirectoryIndex index.php index.html index.htm

按 ctrl+x 退出并保存(并用“y”确认)

然后重新启动apache:

sudo apachectl restart

我的phpinfo();返回 PHP 版本 5.3.15

==================

由于我发现将本地站点放在用户目录中很有用,因此我创建了一个目录 /Users/yourusername/Sites(默认情况下,Mountain Lion 中已不再存在该目录)。

再次通过“sudo nano /etc/apache2/httpd.conf”编辑 httpd.conf 并...

向下滚动到“DocumentRoot”并将其更改为:(其中“yourusername”是您登录时使用的用户名)

DocumentRoot "/Users/yourusername/Sites/"

滚动到显示“# 这应该更改为您设置的 DocumentRoot 的值”的位置。并将下一行更改为:(其中“yourusername”是您登录时使用的用户名)

<Directory "/Users/yourusername/Sites/">

然后按 ctrl+x 退出并保存(并用“y”确认)

重新启动阿帕奇。


2
投票

对于最新版本的 mac os 即 Mojave 10.14,请按照以下步骤激活 PHP 服务器:

  1. 打开终端。按命令+空格键,输入terminal并按回车键。

  2. 输入命令

    $ sudo nano /etc/apache2/httpd.conf
    在nano中编辑httpd.conf文件,nano是macOS中的内置文件编辑器。

  3. 输入密码。

  4. 现在按 control+w 搜索 loadmodule

  5. 找到名为#LoadModule php7_module libexec/apache2/libphp7.so的文件

  6. 通过删除模块开头的 # 符号来取消注释文件。

  7. 现在按 control+x 退出编辑器,按 y 保存更改,然后按 Enter 确认对 httpd.conf 文件的更改。

  8. 现在输入命令重新启动 apache 服务器

    $ sudo apachectl restart

  9. PHP 服务器现在应该正在运行。

现在您可以通过从默认服务器目录打开 PHP 文件来检查服务器的工作情况,也可以更改目录。


2
投票

将 MAC OSX 升级到 10.14.5 后,我的 Apache 配置文件是新的,并且我以前的所有设置都被替换为默认设置。

我无法在浏览器中打开任何 PHP 文件。我按照上述步骤解决了问题。

注意 - OSX 10.14.5 中有 Php7.1.23

我遵循的步骤 -

  1. 编辑位于 /etc/apache2/httpd.conf 下的 httpd.conf 文件
  2. 下面给出的现场评论。我通过删除#号取消注释并保存 httpd.conf 文件并重新启动 apache 服务。
    LoadModule php7_module  
    libexec/apache2/libphp7.so
    
  3. sudo apachectl 重新启动
© www.soinside.com 2019 - 2024. All rights reserved.