博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mac下用brew搭建PHP(LNMP/LAMP)开发环境
阅读量:5236 次
发布时间:2019-06-14

本文共 4809 字,大约阅读时间需要 16 分钟。

Mac下用brew搭建PHP(LNMP/LAMP)开发环境

Mac下搭建lamp开发环境很容易,有xampp和mamp现成的集成环境。但是集成环境对于经常需要自定义一些配置的开发者来说会非常麻烦,而且Mac本身自带apache和php,在brew的帮助下非常容易手动搭建,可控性很高

brew对于mac,就像apt-get对于ubuntu,安装软件的好帮手,不能方便更多…

brew的安装方式如下:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"

brew常用选项

brew install xxxbrew uninstall xxxbrew list brew update xxx

Apache || Nginx (只需要装一个)

Apache

Apache的话使用mac自带的基本就够了,我的系统是10.9,可以使用以下命令控制Apache

sudo apachectl startsudo apachectl restartsudo apachectl stop

唯一要改的是主目录,mac默认在home下有个Sites(站点)目录,访问路径是

http://localhost/~user_name

这样不太容易访问,修改/etc/apache2/httpd.conf内容

DocumentRoot /Users/username/Sites
Options Indexes MultiViews # apache 2.2 # AllowOverride All # Order allow,deny # Allow from 127.0.0.1 # apache 2.4 Require local

这样Sites目录就是网站根目录了,通过http://localhost就可以访问了。

常用命令

sudo apachectl start # 启动apachesudo apachectl stop # 关闭apachesudo apachectl restart # 重启apache

设置vhost

设置vhost可以很方便的进行站点调试,尤其是对于需要在根目录运行的站点。推荐 .

设置方法是:

sudo vi /etc/apache2/extra/httpd-vhosts.conf

然后输入:

Allow From All AllowOverride All Options +Indexes
ServerName "site.test" DocumentRoot "/path/to/site"

这么设置会有个问题,默认的http://localhost会被转到这儿来,所以专门再设置一下localhost的host就好了。

ServerName localhost DocumentRoot /path/to/root

然后把host文件改一下,把刚刚设置的ServerName改到本地就好了。

sudo vi /etc/hosts

写入:

127.0.0.1 site.test

Nginx

要使用Nginx也比较方便,首先安装

brew install nginx

启动关闭Nginx的命令如下(如果想要监听80端口,必须以管理员身份运行)

#打开 nginxsudo nginx#重新加载配置|重启|停止|退出 nginxnginx -s reload|reopen|stop|quit#测试配置是否有语法错误nginx -t

配置Nginx

cd /usr/local/etc/nginx/mkdir conf.d

修改Nginx配置文件

vim nginx.conf

主要修改位置是最后的include

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;}

修改自定义文件

vim ./conf.d/default.conf

增加一个监听端口

server {    listen       80;    server_name  localhost;    root /Users/username/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站点,因为还没有开启php-fpm。

虽然mac 10.9自带了php-fpm,但是由于我们使用了最新的PHP,PHP中自带php-fpm,所以使用PHP中的php-fpm可以保证版本的一致。

这里的命令在安装完下一步的php后再执行

sudo nginxsudo php-fpm -D

PHP

PHP在mac下默认安装了,但是不好控制版本,利用brew可以再mac下安装最新版本,甚至是多个版本,我装了php5.5

brew updatebrew tap homebrew/dupesbrew tap josegonzalez/homebrew-php# brew install php55 --with-fpm #Nginxbrew install php55 #Apache

然后修改php的cli路径和apache使用的php模块。在.bashrc或.zshrc里头加以下内容

#export PATH="$(brew --prefix josegonzalez/php/php55)/bin:$PATH" export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

就用刚刚安装的php代替了系统默认cli的php版本。然后在/etc/apache2/httpd.conf下增加

LoadModule php5_module /usr/local/Cellar/php55/5.5.8/libexec/apache2/libphp5.so

这样就对apache使用的php版本也进行了修改。

后面会用到mongo和mysql,所以可以直接利用下面命令安装php模块,其他模块也类似

#brew install php55-mysql #这个已经不需要再安装了brew install php55-mongo

MySQL

mac不自带mysql,这里需要重新安装,方法依然很简单

brew install mysqlunset TMPDIRmysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmpsudo chown -R your_user /usr/local/var/mysql/

第一句是安装,后面的是确保正常使用。然后是启动命令

mysql.server start

最好给mysql设个密码,方法如下

mysqladmin -u root password 'xxx'

如果想修改mysql的配置,在/usr/local/etc下建立一个my.cnf,例如增加log

[mysqld]general-loggeneral_log_file = /usr/local/var/log/mysqld.log

MongoDB

MongoDB可以说是最简单的一个,直接执行

brew install mongodb

启动方法

mongod --fork

PHPMyAdmin

phpmyadmin几乎是管理mysql最容易的web应用了吧,每次我都顺道装上。

  • 去下载最新的版本
  • 解压到~/Sites/phpmyadmin下
  • 在phpmyadmin目录下创建一个可写的config目录
  • 打开http://localhost/phpmyadmin/setup,安装一个服务,最后保存(这里只需要输入帐号密码就够了)
  • 将config下生成的config.inc.php移到phpmyadmin根目录下
  • 删除config

这样就装好了,虽然可能有点小复杂,但是来一次就习惯了。

这里很可能会遇到2002错误,就是找不到mysql.sock的问题,用下面方法解决

sudo mkdir /var/mysqlsudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

RockMongo

RockMongo是MongoDB很好用的一个web应用,安装也很容易

  • 去下载最新版本
  • 解压到~/Sites/rockmongo下
  • 运行http://localhost/rockmongo即可

把 site 放在 Dropbox 文件夹下

ln -s ~/Dropbox/sitename ~/Sites/sitenamechmod a+rw ~/Dropboxchmod a+rw ~/Dropbox/sitename

完成

这样就在mac下配置好一个php开发环境了,enjoy it!

参考

原文地址:http://yansu.org/2013/12/11/lamp-in-mac.html

转载于:https://www.cnblogs.com/walter371/p/5246828.html

你可能感兴趣的文章
android一些细节问题
查看>>
KDESVN中commit时出现containing working copy admin area is missing错误提示
查看>>
利用AOP写2PC框架(二)
查看>>
[转载]Trie树|字典树(字符串排序)
查看>>
Git学习系列 (一)
查看>>
【原】移动web页面使用字体的思考
查看>>
xp sp3安装IIS
查看>>
解决IE6浏览器下PNG图片无法正常显示的问题
查看>>
JDK安装与环境变量配置
查看>>
【动态规划】skiing
查看>>
java定时器的使用(Timer)
查看>>
Cocos2d-x官方在线视频-Cocos2d-x3.2《2048》手游开发揭秘
查看>>
print横向打印数据
查看>>
APP上架流程
查看>>
虚拟机出现“操作文件.PhysicalDrive1失败”的解决方法
查看>>
虚拟交换系统-VSS
查看>>
UNL/EVE关联putty和wireshark
查看>>
考研数据结构-顺序表(基本操作)
查看>>
14_01__shmGetZ
查看>>
ant-design学习准备_1
查看>>