我在Mac上安装了php@7.4 with brew,一切正常,但当我在Safari中打开localhost时,它只显示php代码。
我的代码:
<?php
echo "Hello world";
以及本地主机上的结果:result on localhost
我想这是我的问题。我添加了这一行到http. conf文件和没有工作在localhost(Safari浏览器无法连接到服务器"localhost")。
LoadModule php7_module /usr/local/opt/php@7.4/lib/httpd/modules/libphp7.so
1条答案
按热度按时间eeq64g8w1#
最后我找到了解决方案。macOS中的网守确保只有经过验证的应用程序才能执行,这是通过使用codesign对应用程序进行签名来实现的。代码签名在macOS Big Sur上是可选的,但从macOS Monterey开始是强制性的。
使用homebrew安装的PHP模块没有签名,所以您需要先签名,然后才能使用。
我创建了一个用于代码签名的证书颁发机构和一个代码签名证书,然后才能使用codesign实用程序对PHP模块进行签名。
步骤1:How to create Certificate Authority for Code Signing in macOS
步骤2:How to create code signing certificate in macOS
步骤3:从Apache的PHP LoadModule指令中找到PHP模块的位置或路径。
第4步:使用您创建的代码签名证书名称使用codesign对PHP模块进行签名。
步骤5:使用您喜欢的文本编辑器打开Apache配置文件。
步骤6:在PHP LoadModule指令中的模块路径后添加代码签名证书名称。
然后重新启动Apache。