• Mac下安装php7.0+php5.6+nginx多版本开发环境


    平时网站需求 需要PHP环境
    提前安装好homebrew

    1.卸载mac自带的apache和php,有用集成环境,建议也删掉

    先停掉apache:

            sudo apachectl stop
    
    然后统统删掉
    
           sudo rm /usr/sbin/httpd
           sudo rm -r /etc/apache2/
    

    2.安装nginx

      brew install nginx 
    
      安装完后,先不急着修改配置文件
    
      先设置权限
    
            sudo chown root:wheel/usr/local/opt/nginx/bin/nginx
            sudo chmod u+s/usr/local/opt/nginx/bin/nginx
    
      如果想设开机启动的话
    
           mkdir -p ~/Library/LaunchAgents
           cp /usr/local/opt/nginx/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
           launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
    
            launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist(取消开机启动)
    
      nginx命令
    
           sudo nginx #打开 nginx
           nginx -s reload|reopen|stop|quit  #重新加载配置|重启|停止|退出 nginx
           nginx -t   #测试配置是否有语法错误
           如果提示pid丢失的话,就用这句话
           nginx -c "/usr/local/etc/nginx/nginx.conf"
    
       好了nginx安装完毕,大家可以localhost一下,就可以看到nginx的信息了
    

    3.安装mysql

       brew install mysql
    
       加入开机启动
              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
    
             cd /usr/local/Cellar/mysql/5.7.11/bin
    
             mysql_install_db
    
       设置root账户和密码
    
            ./mysql_secure_installation 一直跟着提示走就行
    

    4.先安装php7

      brew install php70 --without-apache --with-fpm 
    
      因为我们用nginx,所有--without-apache,并且加上--with-fpm来编译php
    
      安装完成后,加入全局变量
    
              vim ~/.bash_profile 添加  export PATH=/usr/local/bin:/usr/sbin:$PATH
    
              然后 vim ~/.bashrc  添加   export PATH = "$(brew --prefix homebrew/php/php70)/bin:$PATH"
    
              最后 sourc ~/.bash_profile  source ~/.bashrc
    
      然后加入开机自启
    
               mkdir -p ~/Library/LaunchAgents
               cp /usr/local/opt/php70/homebrew.mxcl.php70.plist ~/Library/LaunchAgents/
               launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist   
    

    5.安装php5.6.18

           brew install php56 --without-apache --with-fpm    
    
          vim ~/.bashrc  修改 export PATH = "$(brew --prefix homebrew/php/php70)/bin:$PATH"  为 export PATH = "$(brew --prefix homebrew/php/php70)/bin:$(brew --prefix             homebrew/php/php56)/bin$PATH";
    
    
    
        然后加入开机自启
    
               mkdir -p ~/Library/LaunchAgents
               cp /usr/local/opt/php70/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/
               launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist        
    

    6.安装php版本切换公具

         brew install php-version
    
        安装完成后 vim ~/.bashrc 添加  source $(brew --prefix php-version)/php-version.sh && php-version 7后面的 &&php-version是你想默认开启的php版本。自己选一个就行
    
        sourc .bashrc后,命令行输入php-version,就可以看到在你电脑中的所有php版本,你想用哪个就php-version 5.6.18 或 php-version7.0.2来切换版本
    

    7.安装php扩展包

        其实很简单,比如你想安装php7的xdebug扩展,就brew install php70-xdebug,想安装mcrypt就 brew install php70-mcrypt
    
        如果想按5.6的就 brew install php56-xxxx,是不so easy,另外你可以 brew search php70,可以看到所有php7的扩展库,同理
    
       也可以查php56的
    

    8.配置nginx 和 php-fpm

      nginx 配置 很简单,nginx的配置文件在 /usr/local/etc/nginx/文件中  vim nginx.conf
    
      然后 根据 自己的需求去配置就行,这里就不用详细说了
    
      php-fpm的配置:     先cd到  /usr/local/etc/php,你可以看到7.0和5.6这俩个文件夹,至于你想要改哪个,就改就行
    
     这没什么配置的,就是把nginx和fpm的端口统一就行
    

    9.最后关键

      每次修改了php.ini文件。都要重启php-fpm,就行启动apache一样,不过这会不用重启nginx
    
     重启步骤
    
    sudo killall php-fpm 先停掉所有php-fpm的进程
    
    cd  /usr/local/Cellar/php/版本号/sbin 
    
    不同版本的php,sbin目录里会有不同的php-fpm,比如php7.0的是php70-fpm, php5.6.18的是 php56-fpm,你想启动哪个fpm就
    

    敲 sudo ./php70-fpm start 或php56-fpm start就行

    小白技术社
  • 相关阅读:
    CSP-S 2019游记
    南校五天集训游记
    web.xml模板
    JDBC Template的基本使用
    Spring AOP(3)使用AspectJ xml配置
    Spring AOP(2)使用AspectJ注解
    Spring Aop(面向切面编程)
    Spring Bean管理3(xml与注解混合使用)
    Python核心技术与实战——十二|Python的比较与拷贝
    test
  • 原文地址:https://www.cnblogs.com/xbjss/p/13326715.html
Copyright © 2020-2023  润新知