在Mac OS上搭建Nginx+PHP+MySQL开发环境的教程

这篇文章主要介绍了在Mac OS上安装配置Nginx+PHP+MySQL开发环境的教程,虽然Mac自带PHP,但还是要注意一下php-fpm报错问题的发生,需要的朋友可以参考下

安装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。

配置

  1. <!-- lang: shell -->
  2. cd /usr/local/etc/nginx/
  3. mkdir conf.d
  4. vim nginx.conf
  5. vim ./conf.d/default.conf

nginx.conf内容,

  1. <!-- lang: shell -->
  2. worker_processes 1;
  3. error_log /usr/local/var/log/nginx/error.log warn;
  4. pid /usr/local/var/run/nginx.pid;
  5. events {
  6. worker_connections 256;
  7. }
  8. http {
  9. include mime.types;
  10. default_type application/octet-stream;
  11. log_format main '$remote_addr - $remote_user [$time_local] "$request" '
  12. '$status $body_bytes_sent "$http_referer" '
  13. '"$http_user_agent" "$http_x_forwarded_for"';
  14. access_log /usr/local/var/log/nginx/access.log main;
  15. port_in_redirect off;
  16. sendfile on;
  17. keepalive_timeout 65;
  18. include /usr/local/etc/nginx/conf.d/*.conf;
  19. }

default.conf文件内容,

  1. <!-- lang: shell -->
  2. server {
  3. listen 8080;
  4. server_name localhost;
  5. root /Users/user_name/nginx_sites/; # 该项要修改为你准备存放相关网页的路径
  6. location / {
  7. index index.php;
  8. autoindex on;
  9. }
  10. #proxy the php scripts to php-fpm
  11. location ~ \.php$ {
  12. include /usr/local/etc/nginx/fastcgi.conf;
  13. fastcgi_intercept_errors on;
  14. fastcgi_pass 127.0.0.1:9000;
  15. }
  16. }

安装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:

<!-- ~/nginx_sites/index.php -->

<?php phpinfo(); ?>

启动nginx服务,

sudo nginx;

修改配置文件,重启nginx服务,

sudo nginx -s reload

启动php服务,

sudo php-fpm;

在浏览器地址栏中输入localhost:8080,如果配置正确地话,应该能看到PHP相关信息的页面。