Mac上通过brew安装lnmp (php7)开发环境

很多开发者都喜欢使用lnmp作为项目服务器,但是我们很多开发者本地喜欢用集成lamp环境开发,一到上线,各种水土不服,那么我们直接在mac上安装lnmp,就不会浪费那么多时间调代码了,接下来我们开始安装linux + nginx + php72 + mysql5环境,brew对于Mac相当于ubuntu 的apt-get那么重要以及方便,大家可以先去安装brew,很简单
一、准备条件
为了安装最新的配置,我们提前升级brew

brew update

二、安装PHP7
1、安装php7.2

brew install php72

2、遇到问题以及解决,如果以前安装过的话会出现

➜  ~ brew install php72

==> Installing php72 from homebrew/php
Error: Cannot install homebrew/php/php72 because conflicting formulae are installed.
php55: because different php versions install the same binaries.
Please `brew unlink php55` before continuing.
Unlinking removes a formula's symlinks from /usr/local. You can
link the formula again after the install finishes. You can --force this
install, but the build may fail or cause obscure side-effects in the
resulting software.

遇到这个问题可以根据提示执行:brew unlink php55,然后执行brew install php72继续安装php72
3、配置文件位置
好安装后生成的配置文件都在/usr/local/etc/php/7.2目录里,分别如下:
php.ini位置为/usr/local/etc/php/7.2/php.ini
php-fpm.conf位置为/usr/local/etc/php/7.2/php-fpm.conf
PHP运行phpize,PHP-配置ls /usr/local/opt/php72/bin
PHP-FPM位置为/usr/local/opt/php72/sbin/php-fpm
4、将php7加入开机启动

mkdir -p ~/Library/LaunchAgents ln -sfv /usr/local/opt/php72/homebrew.mxcl.php72.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php72.plist

5、将php加入$PATH

vim ~/.bash_profile

添加如下配置文件

export PATH="/usr/local/sbin:$PATH"
export PATH="$(brew --prefix php72)/bin:$PATH"
export PATH="$(brew --prefix php72)/sbin:$PATH"
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

保存退出,运行配置

source ~/.bash_profile

6、查看是否安装成功

lsof -Pni4 | grep LISTEN | grep php

显示如下代码代表安装成功

php-fpm    782 songlu    7u  IPv4 0x7acb53cb3b05a795      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm    783 songlu    0u  IPv4 0x7acb53cb3b05a795      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm    784 songlu    0u  IPv4 0x7acb53cb3b05a795      0t0  TCP 127.0.0.1:9000 (LISTEN)

7、安装php7扩展

brew install php72  #按tab 可以显示如下一些库
php70            php70-fpm        php70-mysql      php70-sqlite3
php70-bcmath     php70-gd         php70-odbc       php70-sybase
php70-bz2        php70-gmp        php70-opcache    php70-tidy
php70-cgi        php70-imap       php70-pgsql      php70-xml
php70-cli        php70-interbase  php70-phpdbg     php70-xmlrpc
php70-common     php70-intl       php70-pspell     php70-xsl
php70-curl       php70-json       php70-readline   php70-zip
php70-dba        php70-ldap       php70-recode     php70-memcached
php70-dev        php70-mbstring   php70-snmp       php70-xdebug   
php70-enchant    php70-mcrypt     php70-soap       php70-redis
php70-yaf

如果上面的方法不可用参考:

brew install php@7.2  #按tab 可以显示如下一些库
php@7.0           php@7.0 fpm        php@7.0 mysql      php@7.0 sqlite3
php@7.0 bcmath     php@7.0 gd         php@7.0 odbc       php@7.0 sybase
php@7.0 bz2        php@7.0 gmp        php@7.0 opcache    php@7.0 tidy
php@7.0 cgi        php@7.0 imap       php@7.0 pgsql      php@7.0 xml
php@7.0 cli        php@7.0 interbase  php@7.0 phpdbg     php@7.0 xmlrpc
php@7.0 common     php@7.0 intl       php@7.0 pspell     php@7.0 xsl
php@7.0 curl       php@7.0 json       php@7.0 readline   php@7.0 zip
php@7.0 dba        php@7.0 ldap       php@7.0 recode     php@7.0 memcached
php@7.0 dev        php@7.0 mbstring   php@7.0 snmp       php@7.0 xdebug   
php@7.0 enchant    php@7.0 mcrypt     php@7.0 soap       php@7.0 redis
php@7.0 yaf

8、重启php7
如果我们修改配置,需要重启一下php7

brew services restart php72

二、安装Nginx
1、安装

brew install nginx

通过homebrew,nginx文件默认被安装在/usr/local/etc/nginx/nginx.conf,然后再浏览器中键入http://localhost:8080,即可访问到nginx的欢迎界面。
2、配置
配置文件地址

vim /usr/local/etc/nginx/nginx.conf

给nginx添加一个配置文件sites-enabled,方便以后我们添多站点;没有的话可以自己建一个然后再/usr/local/etc/nginx/nginx.conf中添加如下代码引入配置,有的话可以忽略

include /usr/local/etc/nginx/sites-enabled/*;

接下来开始配置多站点

vim /usr/local/etc/nginx/sites-enabled/default 

添加如下代码,每个意义看备注,多站点直接复制如下代码重新粘贴,然后修改root,server_name重启nginx即可

server {
        listen 80;
        root /usr/local/etc/nginx/www/cat/public;  #项目文件地址          
        index index.php index.html index.htm;
        server_name web.cat.com; #本地域名,可以在host里定义
        location / {
                try_files $uri $uri/ /index.php?$query_string;
        }
        location ~ \.php$ {
                try_files $uri /index.php =404;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }
        location ~ /\.ht {
                deny all;
        }
}

配置完成我们可以重启nginx,让配置生效:

nginx -s reload

3、Nginx启动关闭命令:
测试配置是否有语法错误

nginx -t

开启Nginx服务器

sudo nginx

重新加载配置|重启|停止|退出 nginx

nginx -s reload|reopen|stop|quit

也可以使用Mac的launchctl来启动|停止

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist

Nginx开机启动,不过推荐自己启动

ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist

三、安装MySQL
MySQL也可以使用brew命令直接进行安装:

brew install mysql@5.7

同样,可以设置MySQL的开机自启动:

ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql@5.7.plist

然后进行MySQL的安全安装,使用以下命令,可以更改root密码、删除匿名用户、关闭远程连接等:

然后会输出以下内容:

> Enter current password for root (enter for none):     //默认没有密码,直接回车即可

> Change the root password? [Y/n]                       //是否更改root密码,选择是,然后输入并确认密码

> Remove anonymous users? [Y/n]                         //是否删除匿名用户,选择是

> Disallow root login remotely? [Y/n]                   //是否禁止远程登录,选择是

> Remove test database and access to it? [Y/n]          //是否删除test数据库,选择是

> Reload privilege tables now? [Y/n]                    //是否重载表格数据,选择是

测试数据库是否安装成功:

mysql -u root -p

然后输入刚才设置的root密码,将会输出以下内容:

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> exit         //输入exit退出数据库

常见问题汇总

1、如果出现-bash: mysql: command not found可以执行
PATH="$PATH":/usr/local/mysql/bin
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值