最近做了一个后端的项目,是用PHP+MySQL+Nginx做的,所以把搭建环境的方法简单总结一下。

备注:

  • 物料:Apache/Nginx+PHP+MySQL+MAMP
  • Mac OS 10.12.1 自带Apache,Nginx和PHP

1.运行Apache

  • 查看Apache版本,在终端根目录输入如下命令:

    sudo apachectl -v
  • 终端会输出Apache的版本及built时间

    Server version: Apache/2.4.23 (Unix)
    Server built: Aug 8 2016 16:31:34
  • 开启Apache

    sudo apachectl start
  • 开启后,可以通过浏览器访问:http://localhost,页面显示“It works” 表示已经成功。

  • 关闭Apache

    sudo apachectl stop
  • 重启Apache

    sudo apachectl restart

2.配置PHP

  • 编辑Apache的配置文件,终端输入:

    sudo vi /etc/apache2/httpd.conf
  • 找到:

    #LoadModule php5_module libexec/apache2/libphp5.so
  • 去掉前面的“#”号注释,然后 :wq 保存退出即可

  • 复制一份php.ini.default并将其命名为php.ini即可

    sudo cp /etc/php.ini.default /etc/php.ini
  • 重启Apache,使其生效

    sudo apachectl restart

3.安装MySQL

  • 下载MySQL:http://dev.mysql.com/downloads/mysql/ 下载后双击安装,成功之后,会弹出提示框:

    2017-02-12T09:00:08.587153Z 1 [Note] A temporary password is generated for root@localhost: s;QVTg#=i7wP
    If you lose this password, please consult the section How to Reset the Root Password in the MySQL reference manual.
  • 这个临时密码不好记,可以把它改掉。

  • 以安全模式启动MySQL,并且跳过安全密码,终端输入如下命令:

    sudo mysqld_safe --skip-grant-tables &
  • 修改MySQL密码:

    原理是修改database:mysql 的table:user 中的User字段为root的密码,5.7版本的mysql的密码字段是authentication_string,低版本的叫password;

    update user set authentication_string=PASSWORD("your password") where User="root";
  • 刷新权限,退出重启:

    MySQL> flush privileges;
    MySQL> quit;
    终端:service mysql start
  • 密码修改完成,已经将密码修改为root了。

  • 打开系统偏好配置最下面那一行->MySQL,

    开启MySQL:Start MySQL Server
    关闭MySQL:Stop MySQL Server
  • 注意:Automatically Start MySQL Server On Startup是默认勾选的,勾选后打开电脑会默认开启MySQL,建议不需要的可以不用默认勾选
  • 嫌终端查看数据库不方便的,可以下载Navicat Lite管理软件,管理MySQL超级方便。

4.大招来了,安装MAMP

    • 安装MAMP后,你会发现你上面做的事情基本都是浪费……因为这个一个装完,其他基本都不需要动了,除了稍微改改配置什么的。
    • 安装地址:https://www.mamp.info/en/ 安装免费版的就足够了
    • 通过Preferences设置可以设置项目是用的是Apache还是Nginx,可以设置端口号,也可以设置是用PHP的版本号,然后可以将文件夹指向自己的项目,如果没有就新建一个,最后只需要点一下start即可。 





    • 超级方便有木有!

      这样,一个完整的工程环境就搭建好了,接下来,就可以愉快的编码啦!

 
 

Mac下快速搭建PHP开发环境的更多相关文章

  1. Linux下快速搭建php开发环境

    php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...

  2. Windows下快速搭建安卓开发环境android-studio

    Windows下快速搭建安卓开发环境android-studio 发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 安卓 搭建 Android Windows 快速 环境 Studi ...

  3. mac下如何搭建python开发环境

    1. 安装brew ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/insta ...

  4. CentOS 7快速搭建Nodejs开发环境

    Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好.学习Nodejs首先需要会安装环境.这里我介绍如 ...

  5. 【IntelliJ IDEA新手入门】IDEA如何快速搭建Java开发环境

    作为IntelliJ IDEA mac新手,IDEA如何快速搭建Java开发环境呢? 今天小编就给大家带来了IntelliJ IDEA mac使用教程,想知道IDEA如何快速搭建Java开发环境?那就 ...

  6. 利用CodeBlocks结合freeglut快速搭建OpenGL开发环境

    利用CodeBlocks结合freeglut快速搭建OpenGL开发环境 2018-12-19 10:15:48 再次超越梦想 阅读数 180更多 分类专栏: 我的开发日记   版权声明:本文为博主原 ...

  7. IDEA如何快速搭建Java开发环境

    作为IntelliJ IDEA mac新手,IDEA如何快速搭建Java开发环境呢?今天小编就给大家带来了IntelliJ IDEA mac使用教程,想知道IDEA如何快速搭建Java开发环境? 全局 ...

  8. mac下配置Node.js开发环境、express安装、创建项目

    mac下配置Node.js开发环境.express安装.创建项目 一.node.js的安装 去官网下载对应的平台版本就可以了,https://nodejs.org 二.express安装 sudo n ...

  9. 使用Docker快速搭建PHP开发环境

    最近有个同事找过来,希望我对在很早之前写的一个PHP网站上增加一些功能,当时开发使用xampp构建的本地开发环境,但是现在我的笔记本电脑已经更新,没有当时的开发环境.本着尽量不往电脑上装无用软件的原则 ...

随机推荐

  1. 【转】【完全开源】百度地图Web service API C#.NET版,带地图显示控件、导航控件、POI查找控件

    [转][完全开源]百度地图Web service API C#.NET版,带地图显示控件.导航控件.POI查找控件 目录 概述 功能 如何使用 参考帮助 概述 源代码主要包含三个项目,BMap.NET ...

  2. Chapter5_初始化与清理_成员初始化

    在java中,成员初始化在使用之前应该都要保证已经完成初始化.对于在方法体中的局部变量,如果没有使用指定初始化的方法对成员变量进行初始化,编译器会提示一个错误.而对于类的数据成员,编译器会对这些成员赋 ...

  3. JAVA解决前端跨域问题。

    什么是跨域? 通俗来说,跨域按照我自己的想法来理解,是不同的域名之间的访问,就是跨域.不同浏览器,在对js文件进行解析是不同的,浏览器会默认阻止,所以 现在我来说下用java代码解决前端跨域问题. 用 ...

  4. mybatis递归查询

    <!--mybatis递归查询--><resultMap id="recursionMenuMap" type="AgentMenu" ext ...

  5. HTML表单标签

    <form>标签 1.在HTML中,<form></form>标记对用来创建一个表单,即定义表单的开始和结束位置,在标记对之间的一切都属于表单的内容.每个表单元素开 ...

  6. Object constructor

    1. Object is an instance of Function.2. Object does not have a property called constructor so when w ...

  7. Selenium定位iframe动态ID

    Selenium定位iframe动态ID. 126邮箱实例 买了本虫师的书来学习selenium2自动化测试,然后写第一个实例就遇到了一些坑,好在有热心的网友提供了帮助,解决了问题 要学习seleni ...

  8. C++: cin

    cin字符的时候, 会忽略掉'\n', ' '等空白符

  9. java性能分析工具

    jcmd:向JVM发送诊断的命令,jvm未必会全部响应,有些需要在jvm开启相应功能才能响应.个人平时用的不是很多. SampleA: 添加        jcmd pid VM.native_mem ...

  10. 《python语言程序设计》_第6章_函数

    # 6.1_引言 程序1: 结果: Sum from 1 to 10 is 55Sum from 20 to 38 is 513Sum from 35 to 50 is 630 程序2: #程序1和2 ...