我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

本篇文章是mac系统切换php系列的最后一篇文章,本篇文章的内容在这里曾经有所描述,这里结合新的情景,再次整理描述一下。

苏南大叔:mac系统切换php,apache对接php-fpm - php-nginx-apache
mac系统切换php,apache对接php-fpm(图4-1)

上一篇文章的地址是:

配置apache的conf文件

#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_fcgi_module libexec/apache2/mod_proxy_fcgi.so
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
LoadModule rewrite_module libexec/mod_rewrite.so
Include /private/etc/apache2/extra/httpd-vhosts.conf
<FilesMatch \.php$>
    SetHandler "proxy:fcgi://127.0.0.1:9000"
    <IfModule dir_module>
    DirectoryIndex index.html index.php
    </IfModule>
</FilesMatch>

基本的格式如上所示,基本上来说,就是说,开启cgi_module,关闭php_module,然后开启php文件的proxy转发到端口9000。

php-fpm开机启动

利用brew安装的php,fpm的开机启动非常简单。使用下面的语句即可。

brew services start homebrew/php/php72

当然,也可以使用plist的方式,设置开机启动。可以参考下面的文字。

利用liip方式安装的phpfpm的开启启动,就必须设置plist了。

无论是brew还是liip方式,都会默认生成php-fpm文件,路径也都是一致的。位置是 <php路径>/sbin/php-fpmphp-fpm的开机启动,需要个plist文件。

下面的是brew默认生成的plist文件,路径就在<php路径>/这个根目录下面。大家可以打开看看,可以作为模板,用于liip的php的开机启动设置,替换其中的php路径即可。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>KeepAlive</key>
  <true/>
  <key>Label</key>
  <string>homebrew.mxcl.php72</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/opt/php72/sbin/php-fpm</string>
    <string>--nodaemonize</string>
    <string>--fpm-config</string>
    <string>/usr/local/etc/php/7.2/php-fpm.conf</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>LaunchOnlyOnce</key>
  <true/>
  <key>UserName</key>
  <string>sunan</string>
  <key>WorkingDirectory</key>
  <string>/usr/local/var</string>
  <key>StandardErrorPath</key>
  <string>/usr/local/opt/php72/var/log/php-fpm.log</string>
</dict>
</plist>
mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/php72/homebrew.mxcl.php72.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php72.plist

注意: 替换上述命令的路径 /usr/local/opt/php72 为你的php路径。设置liip方式的时候,还可能需要主动生成两个conf文件路径,具体路径是:/usr/local/php5/etc/php-fpm.conf ,还有 /usr/local/php5/etc/www.conf 。这2个文件对应位置,都有.default.conf文件,复制即可。

重启生效

苏南大叔:mac系统切换php,apache对接php-fpm - 010
mac系统切换php,apache对接php-fpm(图4-2)

如果并没有生效,那么可以通过下面的方法排查错误。

cd <php路径>/sbin/ 
sudo ./php-fpm

这样的话,就可以显示出相关的错误提示了。可能的解决方案,除了上述复制conf文件外,给php-fpm设置777权限,也许是可能的操作之一。例如:

sudo chmod +x php-fpm
sudo chmod 777 php-fpm

苏南大叔:mac系统切换php,apache对接php-fpm - 004_fpm_3
mac系统切换php,apache对接php-fpm(图4-3)

苏南大叔:mac系统切换php,apache对接php-fpm - error_01
mac系统切换php,apache对接php-fpm(图4-4)

mac系统切换php系列文章,到此完结。欢迎大家继续关注,苏南大叔的php相关文章。https://newsn.net/tag/php/

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    mac