MAC下使用nginx+php+mysql搭建PHP开发环境

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"

安装mysql

brew install mysql
cd /usr/local/opt/mysql/

修改配置文件

sudo nano my.cnf
如果出现无法启动mysql,rm my.cnf 

加入launchctl启动控制

mkdir -p ~/Library/LaunchAgents/
cp /usr/local/opt/mysql/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
取消启动
//launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

初始化 mysql

./bin/mysql_install_db 
//执行安全设置脚本,设置root账号密码
./bin/mysql_secure_installation

命令行连接mysql

mysql -uroot -p
//关闭mysql
q

然后修改php的cli路径和apache使用的php模块。在.bashrc或.zshrc里头加以下内容

配置 Nginx 支持 PHP-FPM

sudo nano /usr/local/etc/nginx/nginx.conf    


添加默认首页 php

index  index.php index.html index.htm;

取消以下内容的注释,并做修改

location ~ .php$ {
fastcgi_intercept_errors on;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  /usr/local/Cellar/nginx/1.10.2_1/html$fastcgi_script_name;
include        /usr/local/etc/nginx/fastcgi_params;
}

sudo nano /usr/local/Cellar/nginx/1.10.2_1/html/index.php

//添加测试代码

<?php 
phpinfo();
?>

本文只做记录供自己使用,摘抄原文

Apache的话使用mac自带的基本就够了,我的系统是10.9,可以使用以下命令控制Apache

查看现有php版本和apache版本

$ httpd -v

Server version: Apache/2.4.23 (Unix)
Server built: Aug 8 2016 18:10:45

$ php --version

PHP 5.6.29 (cli) (built: Dec 9 2016 07:03:56)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

澳门新葡亰赌995577,因为我们要自己动手来安装 Nginx,因此首先来关闭系统自带的apache:

sudo apachectl stop  //关闭apache,如果事先没开启过,可以忽略报错信息

如果你的apache已经加入了launchctl,使用下面的命令来关闭:

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

为什么选择关闭apache?因为mac os
x系统自带的apache是没有优雅的remove/uninstall 的方式的…
对于“洁癖”比较严重的童鞋,可以选择直接删除相关的文件!(千万不要手抖删错目录…)
建议最好别删除,我删除后安装PHP56时总是安装不成功,如果存储足够的话建议不必删除

sudo rm /usr/sbin/apachectl
sudo rm /usr/sbin/httpd
sudo rm -r /etc/apache2/

删除自带的PHP–建议最好别删除,我删除后安装PHP56时总是安装不成功,如果存储足够的话建议不必删除

sudo rm -r /usr/bin/php

1.去官网下载最新的版本
2.解压到~/Sites/phpmyadmin下
3.在phpmyadmin目录下创建一个可写的config目录
4.打开
5.将config下生成的config.inc.php移到phpmyadmin根目录下
6.删除config

安装nginx

brew install nginx

修改配置文件

sudo nano /usr/local/etc/nginx/nginx.conf
//修改默认的8080端口为80

给予管理员权限

sudo chown root:wheel/usr/local/opt/nginx/bin/nginx
sudo chmod u+s/usr/local/opt/nginx/bin/nginx

加入launchctl启动控制

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/nginx/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist

运行nginx

sudo nginx //打开 nginx
sudo nginx -s reload|reopen|stop|quit  //重新加载配置|重启|停止|退出 nginx
sudo nginx -t   //测试配置是否有语法错误

MongoDB可以说是最简单的一个,直接执行

php的安装与配置

brew 默认没有 php 安装包:

brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php

现在可以安装php了:

brew install --without-apache --with-fpm --with-mysql php56

将php路径加入PATH

sudo nano ~/.bash_profile  
//添加下面这行  
export PATH="$(brew --prefix php56)/bin:$PATH"

source ~/.bash_profile

加入launchctl启动控制

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist

配置路径

/usr/local/etc/php/5.6/php.ini
/usr/local/etc/php/5.6/php-fpm.conf

这样sites目录就是网站根目录了,代码都往这个下头丢

vim ./conf.d/default.conf

这里很可能会遇到2002错误,就是找不到mysql.sock的问题,用下面方法解决

增加一个监听端口

配置Nginx

PHPMyAdmin

[mysqld]
general-log
general_log_file = /usr/local/var/log/mysqld.log
DocumentRoot "/Users/username/Sites"
<Directory />
    Options Indexes MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>
sudo nginx
sudo php-fpm -D
brew update
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
# brew install php55 --with-fpm #Nginx
brew install php55 #Apache

MySQL

PHP在mac下默认安装了,但是不好控制版本,利用brew可以再mac下安装最新版本,甚至是多个版本,我装了php5.5

#打开 nginx
sudo nginx
#重新加载配置|重启|停止|退出 nginx
nginx -s reload|reopen|stop|quit
#测试配置是否有语法错误
nginx -t
cd /usr/local/etc/nginx/
mkdir conf.d

第一句是安装,后面的是确保正常使用。然后是启动命令

如果想修改mysql的配置,在/usr/local/etc下建立一个my.cnf,例如增加log

修改Nginx配置文件

mac不自带mysql,这里需要重新安装,方法依然很简单

Apache || Nginx

MongoDB

brew install mongodb
vim nginx.conf

这样就对apache使用的php版本也进行了修改。

要使用Nginx也比较方便,首先安装

mongod --fork
LoadModule php5_module /usr/local/Cellar/php55/5.5.8/libexec/apache2/libphp5.so

唯一要改的是主目录,mac默认在home下有个sites(站点)目录,访问路径是

brew install xxx
brew uninstall xxx
brew list 
brew update xxx

主要修改位置是最后的include

这样很不适合做开发用,修改/etc/apache2/httpd.conf内容

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图