奥门新浦京官方网站mac搭建php开发环境(mac+apache+mysql+php)并且安装zend framework1框架

Mac下搭建lamp开采条件十分轻便,有xampp和mamp现有的合龙景况。不过集成情状对于时常索要自定义一些配置的开采者来讲会特别麻烦,并且Mac自己自带apache和php,在brew的扶植下非常轻便手动搭建,可控性极高。

奥门新浦京官方网站,查看现成php版本和apache版本

$ httpd -v

Server version: Apache/2.4.23 (Unix)
Server built: Aug 8 2016 18:10:45

$ php --version

PHP 5.6.29 (cli) (built: Dec 9 2016 07:03:56)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

因为大家要和煦动手来设置 Nginx,因而首先来关闭系统自带的apache:

sudo apachectl stop  //关闭apache,如果事先没开启过,可以忽略报错信息

如若你的apache已经参加了launchctl,使用上面包车型客车下令来关闭:

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

何以选取关闭apache?因为mac os
x系统自带的apache是不曾高雅的remove/uninstall 的措施的…
对于“洁癖”相比严重的童鞋,能够采纳间接删除相关的文件!(千万不要手抖删错目录…)
提出最棒别删除,我删除后装置PHP56时连连安装不成功,假诺存款和储蓄丰裕的话提出不要删除

sudo rm /usr/sbin/apachectl
sudo rm /usr/sbin/httpd
sudo rm -r /etc/apache2/

剔除自带的PHP–提议最佳别删除,作者删除后装置PHP56时老是安装不成功,倘诺存款和储蓄充足的话提出不要删除

sudo rm -r /usr/bin/php

自家计算机景况:mac 10.09

Brew

安装nginx

brew install nginx

修正配置文件

sudo nano /usr/local/etc/nginx/nginx.conf
//修改默认的8080端口为80

授予管理员权限

sudo chown root:wheel/usr/local/opt/nginx/bin/nginx
sudo chmod u+s/usr/local/opt/nginx/bin/nginx

步入launchctl运维调整

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/nginx/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist

运行nginx

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

豆蔻梢头、
mac计算机自带了Apache,就不开心重新安装了

brew对于mac,有如apt-get对于ubuntu,安装软件的好入手,不可能造福越来越多…

安装mysql

brew install mysql
cd /usr/local/opt/mysql/

改进配置文件

sudo nano my.cnf
如果出现无法启动mysql,rm my.cnf 

加盟launchctl运营调整

mkdir -p ~/Library/LaunchAgents/
cp /usr/local/opt/mysql/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
取消启动
//launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

初始化 mysql

./bin/mysql_install_db 
//执行安全设置脚本,设置root账号密码
./bin/mysql_secure_installation

一声令下行连接mysql

mysql -uroot -p
//关闭mysql
q

   一言以蔽之下apache的多少个指令

brew的装置格局如下:

php的安装与安顿

brew 暗许未有 php 安装包:

brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php

近年来得以设置php了:

brew install --without-apache --with-fpm --with-mysql php56

将php路线参预PATH

sudo nano ~/.bash_profile  
//添加下面这行  
export PATH="$(brew --prefix php56)/bin:$PATH"

source ~/.bash_profile

步向launchctl运转调控

mkdir -p ~/Library/LaunchAgents
cp /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist

配备路线

/usr/local/etc/php/5.6/php.ini
/usr/local/etc/php/5.6/php-fpm.conf

   sudo apachectl start       开启

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

配置 Nginx 支持 PHP-FPM

sudo nano /usr/local/etc/nginx/nginx.conf    


添加默认首页 php

index  index.php index.html index.htm;

撤销以下内容的笺注,并做修改

location ~ .php$ {
fastcgi_intercept_errors on;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  /usr/local/Cellar/nginx/1.10.2_1/html$fastcgi_script_name;
include        /usr/local/etc/nginx/fastcgi_params;
}

sudo nano /usr/local/Cellar/nginx/1.10.2_1/html/index.php

//增添测量检验代码

<?php 
phpinfo();
?>

本文只做笔录供本人行使,摘要原来的文章

   sudo apachectl restart    重启

brew常用选项

   sudo apachectl stop        停止

brew install xxx
brew uninstall xxx
brew list 
brew update xxx

查阅本机apache的本子为:

Apache || Nginx

   sudo apachectl -v 

Apache

   奥门新浦京官方网站 1

Apache的话使用mac自带的为主就够了,笔者的连串是10.9,能够应用以下命令调整Apache

apache的布置文件的门道为:

sudo apachectl start
sudo apachectl restart
sudo apachectl stop

  /etc/apache2/httpd.conf

唯风度翩翩要改的是主目录,mac暗中同意在home下有个sites(站点)目录,访谈路线是

 
这里笔者还没运用apache暗中同意的站点而是改成了本人客户目录上面新建了三个文件夹

http://localhost/~user_name

  mkdir /Users/liupeng/Sites

那样十分不相符做开垦用,改良/etc/apache2/httpd.conf内容

 
作者计划将该文件夹作为未来放置php程序之处,然后大家就须求去改过apache的安顿,以使它补助

DocumentRoot "/Users/username/Sites"
<Directory />
    Options Indexes MultiViews
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

  sudo vim /etc/apache2/httpd.conf

如此那般sites目录就是网址根目录了,代码都往那么些下头丢

  奥门新浦京官方网站 2

Nginx

十分重要是改良documentroot的路径,保存后退出重启apache,你的计划就水到渠成了

要采用Nginx也正如方便,首先安装

和睦能够在该目录上面输出新建三个php文件输出做测验

brew install nginx

apache的布署先说起这里,过会大家还索要开展设置

运维关闭Nginx的下令如下(假使想要监听80端口,必得以处理人身份运转)

 

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

二、php
mac系统中自带了5.4的版本,作者索要动用5.3的,作者说了算选用brew举办设置,那一个看似于ubuntu下边的apt-get
管理工科具,主要但是补助安装好有关正视的类库

配置Nginx

    大家首先进行安装brew

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

    大家能够一贯仿照效法官方文书档案:安装brew

改进Nginx配置文件

    安装完结后,大家遵照上边包车型大巴步调举办设置php5.3版本

vim nginx.conf
 brew update   brew tap homebrew/dupes   brew tap josegonzalez/homebrew-php   # brew install php55  如果想安装5.5版本就用这个命令   brew install php53 
如果安装过程中出现问题,建议直接谷歌,或者直接去github上面的brew主页寻找帮助,我遇到的问题就是在上面看到外国人发的问题的答案里解决掉的。

安装完成后默认的安装位置是
这个时候看好终端输出,它会教你怎么去使apache加载这个版本的php,大家可以看下我的,我把原有的注释掉了
sudo vim /etc/apache2/httpd.conf

重在改正地点是最后的include

   矫恰巧后保存退出,重启apache,就好了!

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

   此时还牵涉到一个境况变量的主题材料,假设大家在终端中输入php
-v只怕来得的依旧土生土养系统中的php版本音讯;大家根据终端中的指令,直接复制粘贴推行就足以了!附上自身的极点消息

修改自定义文件

   

vim ./conf.d/default.conf

To enable PHP in Apache add the following to httpd.conf and restart
Apache:

充实叁个监听端口

    LoadModule php5_module   
/usr/local/opt/php53/libexec/apache2/libphp5.so

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。

The php.ini file can be found in:

即使如此mac
10.9自带了php-fpm,不过由于大家选用了最新的PHP,PHP中自带php-fpm,所以采取PHP中的php-fpm可以有限补助版本的等同。

    /usr/local/etc/php/5.3/php.ini

那边的吩咐在装置完下一步的php后再实施

 

sudo nginx
sudo php-fpm -D

✩✩✩✩ PEAR ✩✩✩✩

PHP

 

PHP在mac下暗许安装了,可是不好控制版本,利用brew能够再mac下安装新型版本,甚至是多少个版本,小编装了php5.5

If PEAR complains about permissions, ‘fix’ the default PEAR permissions
and config:

brew update
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
# brew install php55 --with-fpm #Nginx
brew install php55 #Apache

    chmod -R ug+w /usr/local/Cellar/php53/5.3.29/lib/php

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

 

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

    pear config-set php_ini /usr/local/etc/php/5.3/php.ini system

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

✩✩✩✩ Extensions ✩✩✩✩

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

 

诸有此类就对apache使用的php版本也实行了退换。

If you are having issues with custom extension compiling, ensure that

末尾会用到mongo和mysql,所以能够直接选择上边三令五申安装php模块,其余模块也周围

you are using the brew version, by placing /usr/local/bin before
/usr/sbin in your PATH:

brew install php55-mysql
brew install php55-mongo

 

MySQL

      PATH=”/usr/local/bin:$PATH”

mac不自带mysql,这里必要重新安装,方法照旧很简短

 

brew install mysql
unset TMPDIR
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
sudo chown -R your_user /usr/local/var/mysql/

PHP53 Extensions will always be compiled against this PHP. Please
install them

首先句是安装,前面包车型地铁是保证健康使用。然后是运转命令

 

mysql.server start

using –without-homebrew-php to enable compiling against system PHP.

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

✩✩✩✩ PHP CLI ✩✩✩✩

mysqladmin -u root password 'xxx'

 

若果想修正mysql的安插,在/usr/local/etc下树立二个my.cnf,举例扩张log

If you wish to swap the PHP you use on the command line, you should add
the following to ~/.bashrc,

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

~/.zshrc, ~/.profile or your
Shell’s equivalent
configuration file:

MongoDB

 

MongoDB能够说是最轻巧易行的叁个,间接实践

      export PATH=”$(brew –prefix homebrew/php/php53)/bin:$PATH”

brew install mongodb

 

开发银行方法

To have launchd start php53 at login:

mongod --fork

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

PHPMyAdmin

Then to load php53 now:

phpmyadmin差不离是治本mysql最轻巧的web应用了呢,每一次本人都顺路装上。

 

1.去官网下载最新的版本
2.解压到~/Sites/phpmyadmin下
3.在phpmyadmin目录下创建三个可写的config目录
4.打开
5.将config下转移的config.inc.php移到phpmyadmin根目录下
6.删除config

    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.php53.plist

这么就装好了,尽管或许有一点小复杂,不过来一回就习以为常了。

 三、至于mysql的安装,那边我就背着了,大家温馨去百度探视吧!

此间很可能会凌驾二〇〇〇破绽比很多,就是找不到mysql.sock的主题素材,用上面方法消除

 

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

四、接下去初叶说安装zend framework1的配备

RockMongo

大家首先须要到官方网址下载完整的压缩包,下载完了随后解压缩必要把

罗克Mongo是MongoDB很好用的四个web应用,安装也相当的轻便

奥门新浦京官方网站 3

1.去官网下载最新版本
2.解压到~/Sites/rockmongo下
3.运行

其一目录上面包车型地铁zend文件夹拷贝一分到php include_path的目录路线下

完成

本条实际路子自身在phpinfo里面找,这里大家运用zf这几个工具来创设项目文件夹

这么就在mac下安顿好一个php开荒境况了,enjoy it!

咱俩要求将上海体育场地中的bin文件夹上面包车型地铁zf.sh
zf.php那七个文本移到/usr/bin,这里还索要创制遭逢变量

世家参照他事他说加以考察那篇文章:

小编们切换成/users/liupeng/sites这么些目录上边

zf create project zendframework

此刻就能够在该目录下自动生成项目文件夹。

 

最后一步,大家设置虚构主机:

  首先在apache的配置文件中张开设想主机配置:

  奥门新浦京官方网站 4

将该条语句前面包车型大巴申明去掉,开启加载虚构主机配置,上面大家就去设想主机配置文件中打开安装

奥门新浦京官方网站 5

sudo vim
/etc/apache2/extra/httpd-vhosts.conf,上面我们可以参见小编的计划,注意自个儿打勾的地点,那几个是zend
framework框架的主入口,别写错

奥门新浦京官方网站 6

 这里大家要静心开启rwrite重写模块,在httpd.conf里面张开相关模块(就是去掉前面包车型地铁注释号)

奥门新浦京官方网站 7

世家只顾也要在directory里面开启,就是那几条语句,应当要注意。

好了,先说起这里。作者要去美丽钻研景况变量的难题。不知底的你们能够直接留言或然给作者发邮件,大家一块探求!在此以前际遇难点总心仪遮掩,各样百度Google,依旧放慢脚步自身想一想后再搜索消亡办法才是王道啊 

这篇文章仅仅是预先留下自身之后参见而写,折腾了两日才消除。遇到点难点就疯狂的找百度找Google,最终才发觉依旧要完美的看终端再次回到给你的音讯,里面其实早就有了消除答案,最大的难题要么自身的心缺乏细。

那篇文章重要参照百度谷歌(GoogleState of Qatar的材质,还应该有yansu的博客


发表评论

电子邮件地址不会被公开。 必填项已用*标注