macOS 中已经内置了 PHP、Python、Ruby、Perl 等常用的脚本语言,以及 Apache HTTP 服务器,所以使用起来非常方便。本文以最新的 macOS Sierra 10.12 配置 MAMP 开发环境为例,本文同样适用其它 macOS 版本的配置,macOS Sierra 10.12 中内置的 PHP 版本为 5.6。

一、配置Apache

macOS Sierra 已内置 Apache 服务器,不需要我们自己编译安装,只需开启 Apache 即可使用。

开关服务

可以通过如下命令进行开启、关闭以及重启:

$ sudo apachectl start | stop | restart

开启后,打开浏览器,访问http://localhost/index.html.en如果出现It works!,则 Apache 可以正常使用。

修改配置

配置文件在 /etc/apache2/httpd.conf 文件中,如果需要配置,修改该文件重启即可。比如咱们对如下配置项进行修改:

#. 默认 Web 根目录配置项为:

DocumentRoot "/Library/WebServer/Documents"

我们修改为当前宿主目录下的webroot目录(我的账号为sean),修改后为:

DocumentRoot "/Users/sean/webroot"

还可以修改目录的相关权限:

<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory> <Directory "/Users/sean/webroot">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

#. 还可以修改以当前用户运行Apache,省的以后老是需要修改权限,只需要做如下修改:

# User _www
User sean

当然这个配置只能在开发环境配置,正式服务器配置成这样会存在安全隐患。

配置好后重启 Apache,在 /Users/sean/webroot 目录下新建 index.html,内容为 ”Hello World!“,访问 http://localhost,如果出现 Hello World!,则配置成功。

二、配置 PHP

macOS Sierra 已内置了 PHP 5.6,因此我们只需要在 Apache 的配置中加载 PHP 模块即可。

加载 PHP 模块

打开 Apache 配置文件/etc/apache2/httpd.conf, 找到如下代码,去掉前面的注释(#):

#LoadModule php5_module libexec/apache2/libphp5.so

生成配置文件

默认没有生成 php.ini 配置文件,运行如下命令生成,也可以直接拷贝改名字:

$ sudo cp /etc/php.ini.default /etc/php.ini

测试是否加载成功

重启 Apache 后,在 /Users/sean/webroot 目录下新建 phpinfo.php,内容如下

<?php

phpinfo();

打开浏览器,访问http://localhost/phpinfo.php,如果出现 PHP 的相关信息,则配置成功。

三、安装 Mysql

macOS Sierra 没有内置 Mysql,所以需要自己下载安装。

下载 Mysql

Mysql 官网 下载 .dmg 文件安装即可,本文下载的版本为 Mysql 5.7.16,请按下图指示进行下载:

安装 Mysql

下载后,双击安装即可,安装完成后,会设置一个初始的密码,如下图:

修改密码

Mysql 的所有命令都在 /usr/local/mysql/bin 目录中,下面我们使用 mysqladmin 命令把 root 用户的初始密码修改为 root123,进入该目录,在命令行执行以下命令:

$ ./mysqladmin -u root -p password root123

回车后输入上图中的初始密码 “h#.a%=reR3)=“ 即可修改成功。

登录 Mysql

下面我们用 root 账号在命令行中登录 Mysql,命令如下:

$ ./mysql -uroot -proot123
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 23
Server version: 5.7.16 MySQL Community Server (GPL) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
mysql>

登录后如果出现上图的界面,则 Mysql 安装成功。顺便推荐一个 macOS 中非常好用的 Mysql 客户端工具:Sequel Pro

四、总结

这样我们就配置好了 MAMP 开发环境,下面大家就可以愉快的玩耍了!


本文首发于马燕龙个人博客,欢迎分享,转载请标明出处。

马燕龙个人博客:http://www.mayanlong.com

马燕龙个人微博:http://weibo.com/imayanlong

马燕龙Github主页:https://github.com/yanlongma

macOS 下配置 MAMP 开发环境(Mac + Apache + Mysql + PHP)的更多相关文章

  1. cocos2d-x3.0 macOS下配置Android开发环境以及使用cocos2d-console来新建执行project

    下面是子龙山人录制的关于cocos2d-x3.0的视频教程,macOS下配置Android开发环境.使用cocos2d-console来新建执行project.怎样执行cocos2d-x 3.0win ...

  2. 【开发软件】 在Mac下配置php开发环境:Apache+php+MySql

    本文地址 原文地址   本文提纲: 1. 启动Apache 2. 运行PHP 3. 配置Mysql 4. 使用PHPMyAdmin 5. 附录   有问题请先 看最后的附录   摘要: 系统OS X ...

  3. 在Mac下配置php开发环境:Apache+php+MySql

    /private/etc/apache2/httpd.conf 一.启动Apache sudo apachectl start sudo apachectl -v   可以查看到Apache的版本信息 ...

  4. 在Mac下配置php开发环境:Apache+php+MySql (卡在 给mysql 设置不了账号密码)

    https://my.oschina.net/joanfen/blog/171109#OSC_h4_3 cmd 进入mysql的方法

  5. Linux下配置PHP开发环境

    转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...

  6. Windows下配置Java开发环境

    学习Java第一步是配置本地开发环境,学习最基本的桌面开发,下面以win7为例配置Java开发环境,即:JDK+JRE+Eclipse,安装JDK的时候会默认安装JRE,根据提示安装就可以了. 首先去 ...

  7. mac下配置android开发环境

    从昨天下午到如今.用了差点儿相同一整天的时间去熟悉mac和配置环境,基本已经OK了,大体记录了整个过程中遇到的问题. 1.安装java环境 之前听说mac自带java环境.java -version一 ...

  8. Mac OSX 下配置 LNMP开发环境

    不久前负责了一个项目需要配置PHP7的开发环境,因为之前所有的项目用的是PHP5的,所以研究了这些东西,但是很遗憾,电脑出了问题,不得已重装了系统,然后你懂得...什么都没有了,要重新来过.. 虽然本 ...

  9. macOS Mojave配置OpenGL开发环境

    ---恢复内容开始--- 前言: 本文写作目的: 是由于本人参考 csdn原文 的方法配置环境时踩了很多坑,所以在此写一篇文防止以后用到. 工具: Xcode CMake 步骤: 准备工作: Xcod ...

随机推荐

  1. 一种抛弃GPS的中近距离高精度无线同步新方案

    目前,对于需要做同步数据采集的项目,大家不约而同的选用GPS作同步源,用GPS的秒脉冲作同步基准.对于是1000米内的多采集点的应用来说,这是一种浪费. 目前福州慧聚通信技术有限公司推出一款无线同步数 ...

  2. LBPL--基于Asp.net、 quartz.net 快速开发定时服务的插件化项目

    LBPL 这一个基于Asp.net. quartz.net 快速开发定时服务的插件化项目 由于在实际项目开发中需要做定时服务的操作,大体上可以理解为:需要动态化监控定时任务的调度系统. 为了实现快速开 ...

  3. 项目中使用emoji表情包与表情的解析过程详情

    菜鸡一只,刚开始写博客文笔不好,有问题欢迎相互讨论.闲话不多说. 用到了三个插件 Emoji Picker 第一步 这个emoji表情包插件是我找到比较好 的一个,input框中是不能放入图片的,效果 ...

  4. [ZooKeeper.net] 3 ZooKeeper的分布式锁

    基于ZooKeeper的分布式锁 ZooKeeper 里实现分布式锁的基本逻辑: 1.zookeeper中创建一个根节点(Locks),用于后续各个客户端的锁操作. 2.想要获取锁的client都在L ...

  5. 面试 -- ListView对其指定的子Item进行单独的刷新

    1,最近在面试题目的时候突然看到了问题"ListView对其指定的子Item进行单独的刷新",当时感觉一脸懵逼,还是第一次听到这个问题,也就是不能使用adapter.notifyD ...

  6. linux ip 转发设置 ip_forward

    工作原理: 内网主机向公网发送数据包时,由于目的主机跟源主机不在同一网段,所以数据包暂时发往内网默认网关处理,而本网段的主机对此数据包不做任何回应.由于源主机ip是私有的,禁止在公网使用,所以必须将数 ...

  7. 转:Java中finally和return的执行关系

    finally可以分两方面理解 1.执行时机问题.finally总会执行(除非是System.exit()),正常情况下在try后执行,抛异常时在catche后面执行 2.返回值问题.可以认为try( ...

  8. Android Weekly Notes Issue #250

    Android Weekly Issue #250 March 26th, 2017 Android Weekly Issue #250. 本期内容: 好几篇关于Android O预览版的文章; JU ...

  9. Java进阶之多线程

    多线程 多线程(multiple thread)是计算机实现多任务并行处理的一种方式. 在单线程情况下,计算机中存在一个控制权,并按照顺序依次执行指令.单线程好像是一个只有一个队长指挥的小队,整个小队 ...

  10. 老李分享:《Linux Shell脚本攻略》 要点(五)

    老李分享:<Linux Shell脚本攻略> 要点(五)   //1.打包.解包 [root@localhost program_test]# tar -cf output.tar 11. ...