首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mac下使用brew配置nginx+php+mysql+PostgreSQL

mac下使用brew配置nginx+php+mysql+PostgreSQL

作者头像
老高的技术博客
发布2022-12-28 09:43:02
7260
发布2022-12-28 09:43:02
举报

大家在win下和Linux系统下配置PHP运行环境已经有很多参考资料了,以老高的经验,win下最好用的是UPUPW,linux求方便是centos+kangle,更加复杂的方法可以翻翻老高的文章归档,里面有很多可以参考的内容。

今天由于工作需要,必须在OSX下配置PHP的开发运行环境,经过一番折腾,终于搞定了!主要参考了Install Nginx, PHP-FPM, MySQL and phpMyAdmin on OS X Mavericks or Yosemite这篇文章,推荐英文好的同学直接看原文。

下面记录一下!(请按照顺序配置)

zsh

请参考zsh + oh-my-zsh 默认shell的最佳替代品

xcode

xcode里面包含了很多命令行工具,为我们后续的操作提供技术支持!所以第一件事情就是安装最新版的xcode,请在Mac App Store中自行安装!

安装完毕后运行一下,然后同意协议,稍等片刻,等安装完毕后关闭xcode,最后运行

xcode-select --install

进入下一阶段!

Brew

第二步请确认你是否已经安装了OSX下的包管理工具brew了!如果没有安装,请移步http://brew.sh/速度安装好!

PHP

有了brew,剩下的问题就很简单了!我们先添加水龙头(软件源)

brew tap homebrew/php

基础安装

brew install php71

如果你有更多的需求,可以搜索包库,直接安装你想要的包,比如需要添加pdo,我们不需要重新编译php,而是这样子!

brew search php71

brew install php71-pdo

安装redis可能会报找不到include/igbinary.h,可以用下面的方法解决!

Homebrew PHP5.6 memcached installation error

系统路径

安装完毕后,我们想要将php加入系统路径,我们可以先查看brew安装php的路径

brew --prefix homebrew/php/php56

我们需要把MACOS自带的PHP改个名字,才能使我们新安装的生效

ll /usr/bin |grep php
-rwxr-xr-x   1 root   wheel   6.6K Feb  8  2017 php-config
-rwxr-xr-x   1 root   wheel    10M Apr 29 08:31 php56
-rwxr-xr-x   1 root   wheel   4.4K Feb  8  2017 phpize


# 重命名
sudo mv php-config php56-config
sudo mv php php56
sudo mv phpize phpize56

开机启动

# old
mkdir -p ~/Library/LaunchAgents
ln -sfv /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/

# new
brew services start php71

启动PHP-FPM

# old
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist

配置文件

配置文件位于/usr/local/etc/php/7.1,看看吧!

查看运行

lsof -Pni4 | grep LISTEN | grep php

mysql

brew install mysql

开机启动

# old
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
# new
brew services start mysql

运行mysql

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

开始安全配置

mysql_secure_installation

nginx

brew install nginx

自动启动

# old
sudo cp -v /usr/local/opt/nginx/*.plist /Library/LaunchDaemons/
sudo chown root:wheel /Library/LaunchDaemons/homebrew.mxcl.nginx.plist

# new
brew services start nginx

运行NGINX

sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.nginx.plist

php-nginx

server {
    listen 80;
    server_name foo.com;

    root /path;
    index index.html index.htm index.php;

    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php$ {
        try_files $uri =404;

        include fastcgi.conf;
        fastcgi_pass 127.0.0.1:9000;
    }
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-09-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • zsh
  • xcode
  • Brew
  • PHP
    • 基础安装
      • 系统路径
        • 开机启动
          • 启动PHP-FPM
            • 配置文件
              • 查看运行
              • mysql
                • 开机启动
                  • 运行mysql
                    • 开始安全配置
                    • nginx
                      • 自动启动
                        • 运行NGINX
                          • php-nginx
                          相关产品与服务
                          云数据库 MySQL
                          腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档