文档章节

Mac OSX 10.9搭建nginx+mysql+php-fpm环境

abing_hu
 abing_hu
发布于 2014/01/04 20:18
字数 713
阅读 35420
收藏 42

安装homebrew

homebrew是mac下非常好用的包管理器,会自动安装相关的依赖包,将你从繁琐的软件依赖安装中解放出来。 安装homebrew也非常简单,只要在终端中输入:

<!-- lang: shell -->
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

homebrew的常用命令:

<!-- lang: shell -->
brew update #更新可安装包的最新信息,建议每次安装前都运行下
brew search pkg_name #搜索相关的包信息
brew install pkg_name #安装包

想了解更多地信息,请参看homebrew

安装nginx

安装

<!-- lang: shell -->
brew search nginx
brew install nginx

当前的最新版本是1.4.4

配置

<!-- lang: shell -->
cd /usr/local/etc/nginx/
mkdir conf.d
vim nginx.conf
vim ./conf.d/default.conf

nginx.conf内容,

<!-- lang: shell -->
worker_processes  1;  

error_log       /usr/local/var/log/nginx/error.log warn;

pid        /usr/local/var/run/nginx.pid;

events {
    worker_connections  256;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log      /usr/local/var/log/nginx/access.log main;
    port_in_redirect off;
    sendfile        on; 
    keepalive_timeout  65; 

    include /usr/local/etc/nginx/conf.d/*.conf;
}

default.conf文件内容,

<!-- lang: shell -->
server {
    listen       8080;
    server_name  localhost;

    root /Users/user_name/nginx_sites/; # 该项要修改为你准备存放相关网页的路径

    location / { 
        index index.php;
        autoindex on; 
    }   

    #proxy the php scripts to php-fpm  
    location ~ \.php$ {
        include /usr/local/etc/nginx/fastcgi.conf;
        fastcgi_intercept_errors on; 
        fastcgi_pass   127.0.0.1:9000; 
    }   

}

安装php-fpm

Mac OSX 10.9的系统自带了PHP、php-fpm,省去了安装php-fpm的麻烦。 这里需要简单地修改下php-fpm的配置,否则运行php-fpm会报错。

<!-- lang: shell -->
sudo cp /private/etc/php-fpm.conf.default /private/etc/php-fpm.conf
vim /private/etc/php-fpm.conf

修改php-fpm.conf文件中的error_log项,默认该项被注释掉,这里需要去注释并且修改为error_log = /usr/local/var/log/php-fpm.log。如果不修改该值,运行php-fpm的时候会提示log文件输出路径不存在的错误。

安装mysql

安装

<!-- lang: shell -->
brew install mysql

常用命令

<!-- lang: shell -->
mysql.server start #启动mysql服务
mysql.server stop #关闭mysql服务

配置 在终端运行mysql_secure_installation脚本,该脚本会一步步提示你设置一系列安全性相关的参数,包括:设置root密码关闭匿名访问不允许root用户远程访问移除test数据库。当然运行该脚本前记得先启动mysql服务。

测试nginx服务

在之前nginx配置文件default.conf中设置的root项对应的文件夹下创建测试文件index.php:

<!-- lang: php -->
<!-- ~/nginx_sites/index.php -->
<?php phpinfo(); ?>

启动nginx服务,sudo nginx; 修改配置文件,重启nginx服务,sudo nginx -s reload 启动php服务,sudo php-fpm; 在浏览器地址栏中输入localhost:8080,如果配置正确地话,应该能看到PHP相关信息的页面。

参考资料

  1. Chen Shan的博文:Installing Nginx and PHP-FPM on Mac OS X
  2. 英文资料:Installing Nginx, PHP-FPM and APC on Mac OS X
  3. D.H.Q的博文:Mac下nginx、mysql、php-fpm的安装配置

© 著作权归作者所有

共有 人打赏支持
abing_hu
粉丝 11
博文 29
码字总数 7098
作品 0
杭州
后端工程师
私信 提问
加载中

评论(7)

突突先锋
谢谢分享
王晓剑
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
灵魂架构师
灵魂架构师
关于MAC下安装的到处都是抄,百度一下竟然没有一篇不是一样的。。。
Megan_zhou
Megan_zhou
怎么停止启动php服务 php-fpm呢?
少红领巾
少红领巾
这样怎么安装mcrypt扩展啊
少红领巾
少红领巾
0
youpengfei
youpengfei
很好用。多谢
Python 2.7.15 发布,bug 修复版本

Python 2.7.15 发布,此版本是 Python 2.7 系列的 bug 修复版本。 macOS 用户需要关注一下,从2.7.15版本开始,所有 python.org macOS 安装程序都附带了 OpenSSL 的内置副本。此外,还有一个...

雨田桑
05/03
0
0
OSX malware and exploit collection (~100 files) + links and resources for OSX malware analysis

此文为关于MAC OSX系统的所有攻击脚本和溢出代码的收藏集。附带资源链接和相关讲解文档~mark下 'Tis the season. Here is a nice collection of ~100 Mac OS malware and Word document expl...

Cnlouds
2013/11/26
0
2
GNU TeXmacs 1.99.8 发布,所见即所得科学编辑器

GNU TeXmacs 1.99.8 已发布,这是一个支持各种数学公式的所见即所得编辑器,可以用来编辑文本、图形、数学、交互内容,它的界面非常友好,并且内置高质量的排版引擎。 更新内容: bug 修复 ...

王练
09/11
0
0
Mac 之xampp 安装MySQLdb【非Pip安装】

刚学习python,到数据库这块,需要安装一个MySQLdb。记录下碰到的问题~~~ 我的环境:Mac High Sierra 10.13.6 + python 2.7 + XAMPP。 特此说明:以下安装只针对本机以及本人碰到的问题,不一...

干干
09/10
0
0
Mac OSX操作系统安装和配置Zend Server 6教程(1)

作为web开发人员,应该熟悉掌握各种系统下安装和配置web服务器与站点的技术。 随着越来越多的开发人员选择Zend Server服务器,慧都推出了在Mac OSX系统安装和配置Zend Server 6教程,此教程将...

kouxunli1
2013/10/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

经典编程书籍大全·我一本都没有看过

经典编程书籍大全 100+ 经典技术书籍,涵盖:计算机系统与网络、系统架构、算法与数据结构、前端开发、后端开发、移动开发、数据库、测试、项目与团队、程序员职业修炼、求职面试 和 编程相关...

netkiller-
23分钟前
0
0
改变自己从学习linux开始

刚刚高中毕业,进如大学的时候,总以为摆脱了束缚可以无拘无束的玩耍了。当时真的就是和众多大学生一起,像撒欢的野马,每天逃课,上网,泡吧,不把学习当一会事,学校里教授讲的各种知识也没...

linuxprobe16
26分钟前
2
0
Apache Zeppelin 中 Spark解释器

概述 Apache Spark是一种快速和通用的集群计算系统。它提供Java,Scala,Python和R中的高级API,以及支持一般执行图的优化引擎。Zeppelin支持Apache Spark,Spark解释器组由5个解释器组成。 ...

hblt-j
27分钟前
1
0
十分钟带你理解Kubernetes核心概念

http://www.dockone.io/article/932

踏破铁鞋无觅处
40分钟前
1
0
浅析微信支付:开通免充值产品功能及如何进行接口升级指引

本文是【浅析微信支付】系列文章的第十五篇,主要讲解如何开通免充值产品功能流程和其中的注意事项,对于接口升级会重要讲解,避免爬坑。 浅析微信支付系列已经更新十五篇了哟~,没有看过的...

YClimb
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部