自己虽然平时爱折腾,却很少有记下来的习惯,除非碰到特别多问题的部署才会有冲动。今天看同事折腾git,在旁边看着他mac上的evernote满满的记了好几篇,全是技术相关的记录,忽然很感慨。过去解决了很多碎片化的问题,都没有系统地记下来,虽然今后也不能保证,但起码会决心挤出时间来写点东西(现在私人时间多了

 

安装nginx:

mac上好用的软件包管理工具首选homebrew,他家的宣传口号牛逼得很,”mac ports driving you to drink?try home brew“ 记得当时google前还真被macport折磨得要吐

安装nginx很简单 ,brew install nginx 就可以了。其中有个小小提示:Warning: /usr/local/sbin is not in your PATH 只需要在/etc/paths中加入 /usr/local/sbin路径即可

mac自带了apache,默认的apache端口是80,nginx安装后默认是8080,我没有洁癖,没必要两个只能活一个,所以8080端口就留给nginx的测试

要使nginx开机启动,终端命令 launchctl load -w /System/Library/LaunchDaemon/org.apache***.plist *号是忘记了得内容,反正按tab就行 (同理unload可撤销)

配置文件/etc/nginx/nginx.conf 在其中的http内容中加入 include vhost/*.conf

新建vhost文件夹,这里按{域名}.conf的规则创建virtual host

 

安装php-fpm:

mac本身的php就支持fpm,php info查看fpm是否enable,否则可以用homebrew再装一次:

brew tap homebrew/dupes

brew tap josegonzalez/homebrew-php

然后 brew install php54 --with-fpm --with-mysql --with-tidy --with-debug

出现 configure: error: Cannot find OpenSSL's <evp.h>,homebrew github上有人回答了该问题

 

For future reference of anybody looking for Command Line Tools with Xcode 5, open up a Terminal window and type xcode-select --install. A window will appear informing you command line tools are required. Click Install and you should be good to go

xcode-select --install, 重新安装后通过

启动fpm:php-fpm 提示找不到conf和log,cp /private/etc/php-fpm.conf.default /private/etc/php-fpm.conf,根据提示的error log路径创建文件或在conf中修改error log路径,运行正常
修改nginx中php fpm的注释,如果配置了vhost则配置文件加入相对的php location内容,script指向root path.

 

开机启动php-fpm

vi /System/Library/LaunchDaemon/org.php.php-fpm.plist:

<?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>Label</key><string>php-fpm</string>

<key>Program</key><string>/usr/sbin/php-fpm</string>

<key>KeepAlive</key><true/>

</dict>

</plist>

launchctl load -w /System/Library/LaunchDaemon/org.php.php-fpm.plist

Thats all.

mac os maverick下安装nginx+php-fpm via homebrew的更多相关文章

  1. 在Mac OS X下安装Android Studio

    在Mac OS X下安装Android Studio只需要几步. 1. 下载Android Studio安装包(.dmg). 2. 打开Terminal输入java -version命令查看是否已安装 ...

  2. Mac OS X 下安装使用 Docker (2017年7月)

    两年前的一篇 Mac OS X 下安装使用 Docker 安装时还是用的 boot2docker, 如今进化到了在 Mac OS X 下用 Docker Toolbox, 而且命令也由 boot2do ...

  3. 在Mac OS环境下安装MySQL服务

    在Mac OS环境下安装MySQL服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我之前介绍过window环境下安装mysql服务,以及在Linux环境下安装mysql服务,今 ...

  4. 在MAC OS X下安装usb转串口驱动(PL2303主控芯片)

    本文原创于http://www.cnblogs.com/humaoxiao,非法转载者请自重!       因为最近手里有一块STM32Discovery开发板,所以想搞一下STM32的开发,我前面的 ...

  5. Mac OS X 下安装使用 Docker

    它依赖于 LXC(Linux Container),能从网络上获得配置好的 Linux 镜像,非常容易在隔离的系统中运行自己的应用.也因为它的底层核心是个 LXC,所以在 Mac OS X 下需要在 ...

  6. Mac OS X 下安装python的MySQLdb模块

    参考资料: mac os x下python安装MySQLdb模块   http://www.codeif.com/post/1073/ MAC OSX使用Python安装模块有关问题  http:// ...

  7. Mac OS使用brew安装Nginx、MySQL、PHP-FPM的LAMP开发环境

    准备工作 新版的 Mac OS 内置了Apache 和 PHP,我的系统版本是OS X 10.9.3,可以通过以下命令查看Apache和PHP的版本号: httpd -v Server version ...

  8. 如何在MAC OS X下安装配置java开发工具

    简介: Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两个特征.Java语言作为静态面向对象编程语 ...

  9. mac OS X下安装Redis及Thinkphp3.1使用Redis

    一.安装Redis 1.安装Homebrew 在终端输入ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/install/maste ...

随机推荐

  1. [转] TCPIP 网络协议层对应的RFC文档

    TCPIP网络协议层对应的RFC文档 RFC - Request For Comments 请求注解 TCP/IP层 网络协议 RFC文档 Physical Layer Data Link Layer ...

  2. C/C++ -- Gui编程 -- Qt库的使用 -- HelloWorld

    1.纯代码写对话框HelloWorld 创建空Qt工程,添加C++源文件main.cpp 需要设置编码以支持中文 -----源代码main.cpp----- #include <QApplica ...

  3. 《垃圾回收的算法与实现》——GC复制算法

    基本概念 GC复制算法将堆分成From和To两个内存块,当From被占满时GC将From中的存活对象复制到To中,同时将From和To交换. 通过递归遍历GC root(即采用深度优先)复制存活对象, ...

  4. spring-data-redis配制

    1:单redis模式下 properties文件 配制 #JedisPoolConfig的参数 #最大连接数 redis.pool.maxTotal= #最大空闲时间 redis.pool.maxId ...

  5. springboot-7-配置druid数据源监视

    关于druid数据源的配置, 上个博客已经说过了,再说一遍吧 , 引入依赖 , 配置properties参数 , 编写servlet和filter提供页面监视 , 测试 1, 引入maven依赖 &l ...

  6. 面试题-----求单链表的倒数第k个节点

    #include <iostream> using namespace std; struct node{ int value; struct node *next; }; struct ...

  7. Java中float和double转换的问题

    为什么double转float不会出现数据误差,而float转double却误差如此之大?   double d = 3.14; float f = (float)d; System.out.prin ...

  8. CUBA China 最新进展

    各位关注CUBA平台的朋友,你们好! 距上次发布动态我们又沉默了大概两个月时间,这期间我们一直在翻译CUBA平台的文档.CUBA平台的开发文档相当丰富,所以这需要耗费较多的时间,至少比我们预想的时间要 ...

  9. 让自己的程序支持livewriter

    参考 http://www.cnblogs.com/Dah/archive/2007/04/02/697312.html 使用MetaWeblog. 在上面的博客里,基本说明了如何设置.   根据cn ...

  10. 点击一个元素,触发另一个元素的click事件