MAMP环境搭建(Mac10.12+Apache24+MariaDB+PHP70)

使用mac没多久,但是这个操作系统真的使用比Windows还舒心,但是有些地方又不如。所以做这个笔记记录自己踩天坑的日记

*文档结构:

  • 1.前言

  • 2.安装

  • 3.遇到的一些问题及解决办法

  • 4.总结

1.系统环境篇

MAMP环境搭建(Mac10.12+Apache24+MariaDB+PHP70)

1.1 前言(最大的坑点)

  • php系统自带是5.6,要弄成7.0+

  • apache 系统自带2.4,可以不用装,但是我brew重新安装了一个

php这是一个大坑 我卡这有3天左右时间,总共查找资料数不清楚了,但是总体分为3种安装方式

1.1.1 编译型安装(不推荐)

优点:

1.我只能说你能熟悉整个过程,然后我就真不知道还有撒了(就像你问我txt文本可以写代码不,我一样说可以的,但是有更好方法为毛不用。)

2.网上教程有四分之二,都是这种方法的安装资料,资料蛮多的

缺点:

1.最low的,最原始的方法

2.新手最容易出错,其中需要下一个语言转换编译器【根据终端提示去安装(可能还有其他需要的,具体看你终端的提示),然后去找】,在进行php7编译,然后各种参数,最后make 然后各种ln软链接,修改环境变量.

1.1.2 Homebrew安装(推荐)

优点:

1.就算不修改源,感觉也相当的快啊(我用了VPN)。当然你也可以修改源,我没有使用,因为速度够了,还有一点不舒服的是,我如果更换了源,使用 brew doctor他会提醒我 git(更新使用的那个)修改回来

清华的源传送门

2.本身提供的其实也是二进制编制,只是所有的东西他都帮你做了(你懂得)。

3.安装扩展很痛苦,参考很多帖子说去删除mac自带的PHP 我建议不要,就算后面你brew安装过多版本也可以共存的unlink,link选择即可 。而使用berw安装后你,他会帮你配置好环境变量

4.brew cask 可以安装MAC AppStore不提供的软件 ,比如webStorm

缺点:

1.brew自带的仓库没有自带PHP, 所以需要使用第三方仓库来做。(这段时间使用发现可以直接将官网下载的PHP 放入brew caches中直接安装)

1.1.3 脚本安装(推荐,升级自带的mac版本)

脚本传送门

优点:

  1. 编译安装脚本化,真的是非常方便

缺点:

1.天朝网络感人。你懂得

2.其实就是卸载掉原先的,安装这个。

1.1.4 感谢小贺搭建php的总结笔记,以及下班途中拦截师父后提供的一个brew大概的运行机制思路。


2.开始搭建

系统环境总共搭建时间使用约5天左右【研究U盘装mac系统,重装系统4次,(3种PHP的安装方式+2种)^5 。】

别问我为毛这么蛋疼,强迫症使然,不这么玩,这笔记怎么出来?

2.1 brew

复制到你终端 他会使用ruby安装,mac自带ruby哦,这个很简单,没撒说的


/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew官网传送门

2.1.1 几个位置
  • brew所在位置

终端安装完成后有提示

  • brew安装的文件所在位置

/usr/local/Cellar

  • brew缓存文件所在的位置

/Users/my/Library/Caches/Homebrew

2.1.2 几个隐藏的命令(很爽的)

为什么叫隐藏,因为brew -h 没有说明,这些事可以去查看源码获取,说几个好用

  • brew tap --添加第三方的仓库

  • brew services list --查看启动的服务

这个是做好plist才会有哦。所以不是绝对的,还有很多,自己感兴趣可以研究下,顺带一说,有一个彩蛋哦

  • brew commands --更多的一些命令

brew每天使用前,建议记得 update一下哦(网真的很重要)

2.2 apache

在mac中apache叫httpd,这点必须告诉一些才接触unix的同学

2.2.1 使用MAC自带的apache

使用命令可以方便知道你的版本号

httpd -v

配置文件在

/private/etc/apache2/httpd.conf

或者

/etc/apache2(这个就是上面的一个软连接,改谁都一样)

2.2.2 brew安装

1.查询仓库

brew tap

2.添加仓库

brew tap homebrew/apache

3.安装apache

brew install httpd24

安装完成后他会自动做好PATH

4.启动apache

sudo apachectl start

简单的区别方法就是原先自带的配置你给8080,brew 安装的你给80 你就知道启动的是哪个了

2.3 mariaDB

自己的理解:

  • 1.mysql升级版,性能优于mysql还兼容mysql

  • 2.因为MySQL之父是卖给SUN的,后被Oracle收购,甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此采用分支的方式来避开这个风险。 过去一年中,大型互联网用户以及Linux发行商纷纷抛弃MySQL,转投MariaDB阵营。MariaDB是目前最受关注的MySQL数据库衍生版,也被视为开源数据库MySQL的替代品。

可以去百度看看,蛮有趣,而且这个数据库是 MySQL之父以女儿的名字命名的 (感觉好暖啊)


1.查询下有没有这个啊

brew search mariadb

2.安装

brew install mariadb

3.运行配置(可选)

mysql_secure_installation

以下是问题 按需设置

> Set root password? [Y/n](为root用户设置密码)

> Remove anonymous users? [Y/n](删除匿名账号)

> Disallow root login remotely? [Y/n](取消root用户远程登录)

> Remove test database and access to it? [Y/n](删除test库和对test库的访问权限)

> Reload privilege tables now? [Y/n](刷新授权表使修改生效)

2.4 php

最坑的就是这个,mac还是brew时不时太瞧不起PHP了?版本不新不说,根本就没有。后来看了很多的资料,扩展是通过--with来安装,然后这个坑才跳过


按需自行添加修改(或者直接用)

brew install php70 --with-apache --with-cgi --with-debug --with-enchant --with-gmp --with-homebrew-curl --with-homebrew-libressl --with-homebrew-libxml2 --with-homebrew-libxslt --with-imap

3.遇到的问题

3.1. apache

  • 问题1:

(13)Permission denied: AH00072: make_sock: could not bind to address [::]:80

(13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80

no listening sockets available, shutting down

AH00015: Unable to open logs

使用sudo 命令启动即可

或者

查看端口号是否被占用

3.2 mariaDB

  • 问题1

严格意义来说 这个不是问题,只是每次需要自己启动服务器,你可以开机自己启动或者每次自己启动,所以我就这么玩了

  1. ln -sfv /usr/local/opt/mariadb/*.plist ~/Library/LaunchAgents

  2. launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mariadb.plist

or

  1. mysql.server start

3.3 php

*问题1:


最坑的就是原先没有安装扩展,

apache需加载的os没有生成,

自行编译的直接弄过去也不行,

4.总结


好久没有遇到这么大的坑了,耗费了太多的精力,写这篇文章的时候也是,

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,014评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,796评论 3 386
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,484评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,830评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,946评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,114评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,182评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,927评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,369评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,678评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,832评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,533评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,166评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,885评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,128评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,659评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,738评论 2 351

推荐阅读更多精彩内容