sher 发表于 2017-7-5 18:58:16

Mac下安装 php+nginx+mysql 开发环境

一、mysql安装
  mysql是安装最简单顺利的

1. 首先去官方网站下载Mac适用的MySQL的dmg包
   下载页面 选择图中最下方的dmg包下载进行安装
  
  安装完成后 MySQL的安装目录为/usr/local/mysql/

2. 启动服务
  设置里 找到MySQL 启动服务 显示running 则服务已启动
  
  上图倒数第二

  上图服务已启动
  如果需要在终端内执行MySQL命令 需要加入环境变量



export PATH=$PATH:/usr/local/mysql/bin/
  MySQL安装完成

二、redis安装

1. 到官方网站下载redis 当前版本 redis-3.2.1.tar.gz
  下载地址:http://redis.io/download











tar -zxvf ./redis-3.2.1.tar.gz  #解压压缩包
cd ./redis-3.2.1          #进入解压的软件目录内
sudo make install          #执行安装
redis-server              #启动redis

2. 安装完成之后 修改redis的配置文件及启动脚本
  配置文件 注意修改启动脚本相关路径的配置:









vi /Library/LaunchDaemons/com.redis.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>
<keyLabel</key>
<stringcom.redis</string>
<keyRunAtLoad</key>
<true/>
<keyProgramArguments</key>
<array>
<string/usr/local/redis/bin/redis-server</string redis
<string/usr/local/redis/redis.conf</string redis.conf
</array>
</dict>
</plist>

#保存退出

launchctl load /Library/LaunchDaemons/com.redis.plist #加载启动脚本
launchctl start com.redis #启动服务
ps aux | grep redis#查看进程是否启动

三、php安装
  本人Mac里自带的php版本为5.5 启动正常 但是zend guard loader扩展始终安装不上最后决定使用php5.4
  这里提到一个网站 http://php-osx.liip.ch/
  网站里有多个PHP版本的集成包 已经内置好了各种扩展 redis memcace mysql等等安装过程极简单
  官方给出了相应的命令



curl -s http://php-osx.liip.ch/install.sh | bash -s 5.4
  等待命令执行完成 我这里用时大概二十分钟左右安装完成后php会安装到/usr/local/目录下php5







export PATH=/usr/local/php5/bin:$PATH #加入环境变量
php -v
PHP 5.4.45 (cli) (built: Mar 10 2016 13:43:09)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans
  显示php已经是5.4版本
  虽然安装了很多扩展 但是并没有zend guard loader的扩展 因此还要下载相关的扩展进行安装
  这里要说明一下PHP安装完成后的目录结构



cd /usr/local/php5
ls -l
drwxr-xr-x158 rootwheel      53727 17 13:25 bin
-rw-r--r--    1 rootwheel       4403 10 20:46 entropy-php.conf
drwxr-xr-x    9 rootwheel       3067 17 14:44 etc #配置文件目录php.ini php-fpm.conf 如有需要推荐修改./php.d/99-liip-developer.ini
drwxr-xr-x   90 rootwheel      30607 17 13:25 include
drwxr-xr-x   13 rootwheel       4427 17 13:25 info
drwxr-xr-x197 rootwheel      66987 17 14:32 lib
-rwxr-xr-x    1 rootwheel124002083 10 20:46 libphp5.so
drwxr-xr-x   33 rootwheel      11227 17 14:43 php.d  #php各种扩展加载的配置目录 其中99-liip-developer.ini可修改配置相当于php.ini
drwxr-xr-x    8 rootwheel       2727 17 13:24 sbin
drwxr-xr-x   12 rootwheel       4087 17 13:24 share
drwxr-xr-x    4 rootwheel       1367 17 13:24 var
  安装ZendGuardLoader



tar -zxvf ./ZendGuardLoader-70429-PHP-5.4-darwin10.7-x86_64.tar.gz
cp ./ZendGuardLoader-70429-PHP-5.4-darwin10.7-x86_64/php-5.4.x/ZendGuardLoader.so /usr/local/php5/lib/php/extensions/no-debug-non-zts-20100525/
  增加启动脚本(注意修改相关文件路径)



vi /etc/php-fpm
#! /bin/sh
### BEGIN INIT INFO
# Provides:          php-fpm
# Required-Start:    $remote_fs $network
# Required-Stop:   $remote_fs $network
# Default-Start:   2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts php-fpm
# Description:       starts the PHP FastCGI Process Manager daemon
### END INIT INFO
prefix=/usr/local/php5/
exec_prefix=${prefix}

php_fpm_BIN=${exec_prefix}/sbin/php-fpm
php_fpm_CONF=${prefix}/etc/php-fpm.conf
php_fpm_PID=${prefix}/var/run/php-fpm.pid

php_opts="--fpm-config $php_fpm_CONF --pid $php_fpm_PID"

wait_for_pid () {
try=0while test $try -lt 35 ; docase "$1" in
'created')
if [ -f "$2" ] ; then
try=''
break
fi
;;

'removed')
if [ ! -f "$2" ] ; then
try=''
break
fi
;;
esacecho -n .
try=`expr $try + 1`

force-quit)
echo -n "Terminating php-fpm "

if [ ! -r $php_fpm_PID ] ; then
echo "warning, no pid file found - php-fpm is not running ?"
exit 1
fikill -TERM `cat $php_fpm_PID`

wait_for_pid removed $php_fpm_PID

if [ -n "$try" ] ; then
echo " failed"
exit 1
else
echo " done"
fi
;;

restart)
$0 stop
$0 start
;;

reload)
echo -n "Reload service php-fpm "

if [ ! -r $php_fpm_PID ] ; then
echo "warning, no pid file found - php-fpm is not running ?"
exit 1
fi

kill -USR2 `cat $php_fpm_PID`

echo " done"
;;

*)
echo "Usage: $0 {start|stop|force-quit|restart|reload|status}"
exit 1
;;
esac

四、nginx安装

这里推荐使用OpenResty
  OpenResty &trade; 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。
  下载OpenRestytar



#安装

tar -zxvf ./openresty-1.9.7.5.tar.gz
cd ./openresty-1.9.15.1
./configure
make
make install
  注意 这一步安装可能会报错 需要安装 PCRE 和 OpenSSL
  Mac OS X 不像linux那样 可以使用yum安装软件 依赖包
  推荐大家使用brew
  首先执行下面命令进行安装



/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  brew安装完成可以直接使用

  关于brew的详细介绍请查看官方说明https://git.io/brew-docs




brew update
brew install pcre openssl
  安装完成后重新编译安装openresty



./configure --prefix=/usr/local/openresty \   #指定安装目录
--with-cc-opt="-I/usr/local/Cellar/openssl/1.0.2h_1/include/ -I/usr/local/Cellar/pcre/8.39/include/" \
--with-ld-opt="-L/usr/local/Cellar/openssl/1.0.2h_1/lib/ -L/usr/local/Cellar/pcre/8.39/lib/" \
#使用 ./configure --help 查看更多的选项。
make
make install
OpenResty安装完成后 找到nginx目录进行配置文件的修改







cd /usr/local/openresty
ls -l
drwxr-xr-x   7 rootadmin    2387 17 17:59 bin
drwxr-xr-x   6 rootadmin    2047 17 17:59 luajit
drwxr-xr-x   7 rootadmin    2387 17 17:59 lualib
drwxr-xr-x11 rootadmin    3747 18 16:22 nginx
drwxr-xr-x@ 40 rootadmin   13607 17 17:59 pod
-rw-r--r--@1 rootadmin954587 17 17:59 resty.index
cd ./nginx/conf/
ls -l
-rw-r--r--@1 rootadmin10777 17 17:59 fastcgi.conf
-rw-r--r--@1 rootadmin10777 17 17:59 fastcgi.conf.default
-rw-r--r--@1 rootadmin10077 17 17:59 fastcgi_params
-rw-r--r--@1 rootadmin10077 17 17:59 fastcgi_params.default
-rw-r--r--   1 rootadmin28561 25 17:19 injection.lua
-rw-r--r--@1 rootadmin28377 17 17:59 koi-utf
-rw-r--r--@1 rootadmin22237 17 17:59 koi-win
-rw-r--r--@1 rootadmin39577 17 17:59 mime.types
-rw-r--r--@1 rootadmin39577 17 17:59 mime.types.default
-rw-r--r--   1 rootadmin41677 17 18:05 nginx.conf
-rw-r--r--@1 rootadmin26567 17 17:59 nginx.conf.default
-rw-r--r--@1 rootadmin   6367 17 17:59 scgi_params
-rw-r--r--@1 rootadmin   6367 17 17:59 scgi_params.default
-rw-r--r--@1 rootadmin   6647 17 17:59 uwsgi_params
-rw-r--r--@1 rootadmin   6647 17 17:59 uwsgi_params.default
drwxr-xr-x12 rootadmin   4087 17 18:14 vhosts
-rw-r--r--@1 rootadmin36107 17 17:59 win-utf
#根据需要修改相关配置文件

nginx启动



sudo /usr/local/openresty/nginx/sbin/nginx
页: [1]
查看完整版本: Mac下安装 php+nginx+mysql 开发环境