安装homebrew

homebrew是mac下非常好用的包管理器,会自动安装相关的依赖包,将你从繁琐的软件依赖安装中解放出来。

安装homebrew也非常简单,只要在终端中输入11:

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

homebrew的常用命令:

1
2
3
$ brew update #更新可安装包的最新信息,建议每次安装前都运行下
$ brew search pkg_name #搜索相关的包信息
$ brew install pkg_name #安装包

想了解更多地信息,请参看homebrew

安装nginx

安装

1
2
$ brew search nginx
$ brew install nginx

配置

1
2
3
4
$ cd /usr/local/etc/nginx/
$ mkdir conf.d
$ vim nginx.conf
$ vim ./conf.d/default.conf

nginx.conf内容,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
worker_processes 1;
 
error_log /usr/local/var/log/nginx/error.log warn;
 
pid /usr/local/var/run/nginx.pid;
 
events {
worker_connections 256;
}
 
http {
include mime.types;
default_type application/octet-stream;
 
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
 
access_log /usr/local/var/log/nginx/access.log main;
port_in_redirect off;
sendfile on;
keepalive_timeout 65;
 
include /usr/local/etc/nginx/conf.d/*.conf;
}

default.conf文件内容,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
server {
listen 8080;
server_name localhost;
 
root /Users/user_name/nginx_sites/; # 该项要修改为你准备存放相关网页的路径
 
location / {
index index.php;
autoindex on;
}
 
#proxy the php scripts to php-fpm
location ~ \.php$ {
include /usr/local/etc/nginx/fastcgi.conf;
fastcgi_intercept_errors on;
fastcgi_pass 127.0.0.1:9000;
}
 
}

安装php-fpm

Mac OSX 10.9的系统自带了PHP、php-fpm,省去了安装php-fpm的麻烦。



这里需要简单地修改下php-fpm的配置,否则运行php-fpm会报错。

1
2
$ sudo cp /private/etc/php-fpm.conf.default /private/etc/php-fpm.conf
$ vim /private/etc/php-fpm.conf

修改php-fpm.conf文件中的error_log项,默认该项被注释掉,这里需要去注释并且修改为error_log = /usr/local/var/log/php-fpm.log。如果不修改该值,运行php-fpm的时候会提示log文件输出路径不存在的错误。

安装mysql

安装

1
$ brew install mysql

常用命令

1
2
$ mysql.server start #启动mysql服务
$ mysql.server stop #关闭mysql服务

配置

在终端运行mysql_secure_installation脚本,该脚本会一步步提示你设置一系列安全性相关的参数,包括:设置root密码关闭匿名访问不允许root用户远程访问移除test数据库。当然运行该脚本前记得先启动mysql服务。

测试nginx服务

在之前nginx配置文件default.conf中设置的root项对应的文件夹下创建测试文件index.php:

1
2
<!-- ~/nginx_sites/index.php -->
<?php phpinfo(); ?>

启动nginx服务,sudo nginx;



修改配置文件,重启nginx服务,sudo nginx -s reload 



启动php服务,sudo php-fpm; 



在浏览器地址栏中输入localhost:8080,如果配置正确地话,应该能看到PHP相关信息的页面。

============================================================================

============================================================================

一、启动Apache

有两种方法

1、打开网络共享

打开"系统偏好设置"->"共享",在"互联网共享"那一项前面打√。

2、打开终端,输入

1
sudo apachectl start

这时需要输入密码,输入电脑密码即可,然后输入

1
sudo apachectl -v

可以查看到Apache的版本信息

1
2
Server version: Apache/2.2.24 (Unix)
Server built:   Jul  7 2013 18:05:17

此时在浏览器中输入http://localhost,会出现It works!的页面

二、运行PHP

1、找到Apache的配置文件,在目录/etc/apache2/下,打开Finder,选择"前往"-"前往文件夹",输入"/etc/apache2/",找到其中的"httpd.conf"文件,选择用文稿打开进行编辑,点按Command+F,搜索#LoadModule
php5_module libexec/apache2/libphp5.so,如图

把蓝色那一行的#号去掉,然后保存,如果出现文本锁定,无法解锁的情况,解决办法有两种

a)选中该文件,右击后选择"显示简介",点击右下角的小锁的图标,输入电脑密码解锁,然后选择左边的+号键,选择自己当前电脑登陆的用户,将权限设置为读与写,如果还是不行,将其上一级文件夹权限同样再修改一次。

b)将该文件复制到桌面,进行修改,修改后再复制到原来的文件夹替换之前的文件即可。

2、重启Apache,在终端输入

1
sudo apachectl restart

PHP就可以用了。

3、在终端输入

1
sudo cp /Library/WebServer/Documents/index.html.en /Library/WebServer/Documents/info.php

即在Apache的根目录下复制index.html.en文件并重命名为info.php。

4、打开info.php,在It works后面加上<?php phpinfo(); ?>,然后再次重启Apache,在浏览器中输入http://localhost/info.php,会出现一个显示php信息的页面,如图所示。

三、配置MySql

1、在http://dev.mysql.com/downloads/mysql/网站上,选择Mac OS X平台,然后选择图中的下载,我开始下载错了,安装出错,后来下载图中的版本安装成功

双击dmg文件

双击第一个安装,然后双击第三个安装,然后双击第二个,第二个是配置文件,安装之后,可以在系统偏好设置中选择启动或者关闭MySql。

2、修改密码

在终端输入,这里修改密码为12345,也可为其他,自定义即可

1
/usr/local/mysql/bin/mysqladmin -u root password 12345

四、使用phpMyAdmin

phpMyAdmin是用PHP开发的管理MySql的程序,非常实用

1、下载phpMyAdmin,在网址http://www.phpmyadmin.net/home_page/downloads.php中选择合适的版本下载,我选择的是phpMyAdmin-4.0.8-All-Languages.tar.bz2

2、将下载好的文件解压后,放进/Library/WebServer/Documents/文件夹中,并命名为phpmyadmin。

3、复制/Library/WebServer/Documents/phpmyadmin中的config.sample.inc.php,并命名为config.inc.php,并放在当前文件夹下。

4、编辑config.inc.php,修改其中的

1
$cfg['Servers']]$i]['host']
=
'localhost';

1
$cfg['Servers']]$i]['host']
=
'127.0.0.1';

即可,如果想要无密码登陆,则将其中的下面语句中的false改成true

1
$cfg['Servers'][$i]['AllowNoPassword'] =
false

5、在浏览器中输入 http://localhost/phpmyadmin,输入用户名"root",和刚刚自己所更改的密码,如果未更改密码,则按照上一步骤中的无密码操作,然后就可以直接登陆了。

PS:到此配置完成,进行php开发还需下载一个php开发工具,mac下的php开发工具也挺多,大家自行谷歌百度,需要提醒的是,安装好开发工具之后,在建议php工程时,记得要将工程放在和phpmyadmin同一个目录文件下,可新建一个文件夹专门用来存放php工程,否则,是无法运行的(某大神指示,本人尚未亲自验证)

MAC搭建 PHP 环境的更多相关文章

  1. lua 学习 (一 )Mac搭建lua环境和ide

    今天开始学习lua  首先是搭建环境 和 我的hello world 首先 交代一下我用的是 Mac 系统 所以在Mac上安装lua 环境很方便的 lua  Mointain Lion - Lua 5 ...

  2. Mac搭建appium环境

    1.安装brew 查看是否已经装上brew,终端输入命令:brew --version,已经装上的就不用再装了: 如果没有安装,终端输入命令:ruby -e "$(curl -fsSL ht ...

  3. mac搭建mnmp环境

    brew安装nginx brew install nginx 安装php56 brew tap homebrew/dupes brew tap josegonzalez/homebrew-php br ...

  4. mac搭建mamp环境

    1 先安装homebrew; 执行:cd /usr/local; 非root用户执行: ruby -e "$(curl -fsSL https://raw.githubusercontent ...

  5. 在Mac 搭建robotframework 环境 遇到ride.py 打不开的方法(没试过,先记录在此)

    折腾来一下午,遇到了好多坑 坑 1.不要用pip 下载wxpython 2.不要用mac自带的python 3.不要自己下载wxpython 步骤: 1. 安装homebrew, /usr/bin/r ...

  6. 在Mac 搭建robotframework 环境

    折腾来一下午,遇到了好多坑 坑 1.不要用pip 下载wxpython 2.不要用mac自带的python 3.不要自己下载wxpython 步骤: 1. 安装homebrew, /usr/bin/r ...

  7. mac搭建lamp环境

    转载:https://www.cnblogs.com/beautiful-code/p/7465320.html

  8. Mac搭建python环境

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

  9. mac搭建TensorFlow环境

    1.首先安装Anaconda,下载地址:https://www.anaconda.com/download/#macos,根据需要下载所需的版本. 2.安装TensorFlow,安装命令:pip in ...

随机推荐

  1. sql,lambda,linq语句

    实例 Code 查询Student表的所有记录. select * from student Linq: from s in Students select s Lambda: Students.Se ...

  2. java.lang.RuntimeException: HRegionServer Aborted

    java.lang.RuntimeException: HRegionServer Aborted 当我们启动hbase集群的时候,刚启动时每个节点上的进程都显示正常,过一会其他两个节点上的HRegi ...

  3. 一次简单的C++编译错误

    快要下班的时候,开发部的一名小鲜肉找我帮忙解决一个问题: 才哥,我们提供给计费组的库在计费主机上编译报错了,但是提供给其他组用时没有编译报错.计费也不认,说编译器报的是我们代码上的错误,要我解决,帮我 ...

  4. pip源设置 & pandas安装

    pip的官方源python.pypi.org貌似被墙,换用国内安装源 网上的设置方法都是基于Unix的,Windows下的设置略麻烦. 更新..\Lib\site-packages\pip下的cmdo ...

  5. 「日常训练」Jin Yong’s Wukong Ranking List(HihoCoder-1870)

    题意与分析 2018ICPC北京站A题. 题意是这样的,给定若干人的武力值大小(A B的意思是A比B厉害),问到第几行会出现矛盾. 这题不能出现思维定势,看到矛盾就是矛盾并查集--A>B.A&g ...

  6. python numpy数据相减

    numpy数据相减,a和b两者shape要一样,然后是对应的位置相减.要不然,a的shape可以是(1,m),注意m要等于b的列数. import numpy as np a = [ [0, 1, 2 ...

  7. struts2源码分析-初始化流程

    这一篇文章主要是记录struts.xml的初始化,还原struts2.xml的初始化流程.源码依据struts2-2.3.16.3版本. struts2初始化入口,位于web.xml中: <fi ...

  8. OSS文件上传及OSS与ODPS之间数据连通

    场景描述        有这样一种场景,用户在自建服务器上存有一定数量级的CSV格式业务数据,某一天用户了解到阿里云的OSS服务存储性价比高(嘿嘿,颜值高),于是想将CSV数据迁移到云上OSS中,并且 ...

  9. 使用Response.Write实现在页面的生命周期中前后台的交互

    Response.Write()方法非常的常见,也很普通,就是向http output中输出一string.其输出的内容位于页面的最顶端,常用来实现显示一些页面消息框等逻辑. 一般来说,在页面的整个生 ...

  10. POJ 3608 Bridge Across Islands(计算几何の旋转卡壳)

    Description Thousands of thousands years ago there was a small kingdom located in the middle of the ...