mac下安装php7.4、mysql5.7、mongodb、nginx环境

/ 0评 / 0


- 原因:不想用一键安装包
- 结果:折腾成功
- 安装环境:MacOS 15.x

这篇文章Sandy是通过brew安装,brew对于MacOS相当于Ubuntu 的apt一样方便简单,大家可以先去安装brew。官方一键安装,非常简单!
官方地址:https://brew.sh/

 $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 

一、准备条件

为了安装最新的配置,我们提前升级brew

brew update

二、安装PHP7

1、安装php7.4

brew search php74 
brew install php@74

如果你的系统已经安装其他版本,报错可能如下

➜  ~ brew install php@74

==> Installing php74 from homebrew/php
Error: Cannot install homebrew/php/php74 because conflicting formulae are installed.
php55: because different php versions install the same binaries.
Please `brew unlink php55` before continuing.   //也就是你的系统已经安装php5.5
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.

那么你可以卸载当前系统下的php5.5版本

brew unlink php55

然后继续安装

2、配置文件位置

好安装后生成的配置文件都在/usr/local/etc/php/7.4目录里,分别如下:
php.ini位置为/usr/local/etc/php/7.4/php.ini
php-fpm.conf位置为/usr/local/etc/php/7.4/php-fpm.conf
PHP运行phpize,PHP-配置ls /usr/local/opt/php@7.4/bin
PHP-FPM位置为/usr/local/opt/php@7.4/sbin/php-fpm

3、查看是否安装成功

lsof -Pni4 | grep LISTEN | grep php
//结果,表示安装成功了
php-fpm    604 sandyliao    8u  IPv4 0x71e9686149e1591f      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm    692 sandyliao    9u  IPv4 0x71e9686149e1591f      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm    693 sandyliao    9u  IPv4 0x71e9686149e1591f      0t0  TCP 127.0.0.1:9000 (LISTEN)

4、重启php

如果我们修改配置,需要重启一下php

brew services restart php

三、安装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安装完访问本地默认的目录是    /usr/local/Cellar/nginx/1.15.12/html

在nginx的配置文件最下面有一个引入所有的一行代码,可以在这个目录下(server)创建不同的站点。

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

server {
        listen 80;
        root /usr/local/etc/nginx/www/cat/public;  #项目文件地址          
        index index.php index.html index.htm;
        server_name blog.e9china.net; #本地域名,想要在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
nginx -s reload|reopen|stop|quit

四、安装MySQL

1、安装

//直接安装
brew install mysql@5.7

设置MySQL的开机自启动:

ln -sfv /usr/local/opt/mysql@5.7/*.plist ~/Library/LaunchAgents
/Users/wangteng/Library/LaunchAgents/homebrew.mxcl.mysql@5.7.plist -> /usr/local/opt/mysql@5.7/homebrew.mxcl.mysql@5.7.plist

增加环境变量

export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"

增加完环境变量别忘了使之生效

然后启动mysql

mysql.server start

测试数据库是否安装成功

mysql -u root -p  //因为没有设置密码,两次回车即可

查看网络监听

$ netstat -nat | grep LISTEN
tcp4       0      0  127.0.0.1.3306         *.*                    LISTEN
tcp4       0      0  127.0.0.1.9000         *.*                    LISTEN
tcp4       0      0  *.80                   *.*                    LISTEN
tcp4       0      0  *.8080                 *.*                    LISTEN
tcp4       0      0  127.0.0.1.63342        *.*                    LISTEN
tcp4       0      0  127.0.0.1.30100        *.*                    LISTEN
tcp4       0      0  127.0.0.1.55154        *.*                    LISTEN
tcp4       0      0  127.0.0.1.6942         *.*                    LISTEN
tcp6       0      0  *.49159                *.*                    LISTEN
tcp4       0      0  *.49159                *.*                    LISTEN
tcp6       0      0  fe80::aede:48ff:.49156 *.*                    LISTEN
tcp6       0      0  fe80::aede:48ff:.49155 *.*                    LISTEN
tcp6       0      0  fe80::aede:48ff:.49154 *.*                    LISTEN
tcp6       0      0  fe80::aede:48ff:.49153 *.*                    LISTEN

五、安装Mongodb

1、Mongodb fro mac

官方最新安装教程:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/

#添加源
brew tap mongodb/brew
#安装
brew install mongodb-community@4.4
#常用命令
brew services start mongodb-community@4.4
brew services stop mongodb-community@4.4
#要手动运行MongoDB(即mongod进程)作为后台进程
mongod --config /usr/local/etc/mongod.conf --fork

查看安装成功

ps aux | grep -v grep | grep mongod

2、安装php扩展

Mongoldb php for mac

官方最新安装教程:https://docs.mongodb.com/drivers/php#compatibility

非常简单,使用pecl去安装

sudo pecl install mongodb

安装好了有一段代码提示:

Build process completed successfully
Installing '/usr/local/Cellar/php/7.4.11/pecl/20190902/mongodb.so'
install ok: channel://pecl.php.net/mongodb-1.8.1
Extension mongodb enabled in php.ini

意思是他已经帮你添加了扩展文件在php.ini下!

手动添加教程

vim /usr/local/etc/php/7.4/php.ini
#最下面加入
extension="mongodb.so"

发表评论

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