MAC下搭建PHP环境

php-fpm nginx 2017年01月07日 星期六

最近由于工作的上的需要,准备开发PHP任务。大学的时候(好久好久之前)自学过,不过现在算是忘完全。语言大多想通,编程的思想万变不离其宗,按着写PY的思路,铿铿锵锵的也完成了需求,有之前的代码参考和同事的帮助,上手还算很快,搭建好环境,了解工程运行机制,就开始着手写需求了 。下面聊聊搭建环境那些事情吧,其中遇到的坑比较多。

1. 安装Nginx

     这个算是简单,直接用brew工具安装,由于之前安装个. 略过 ~~~~

     配置/nginx root/nginx.conf

server {
    listen       80;
    server_name  localhost;
    index        index.php index.html index.htm;
    root         /var/src/www;

    access_log   /var/log/locahost.access.log;
    error_log    /var/log/locahost.error.log;

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    location ~ \.php$ {
       fastcgi_pass   127.0.0.1:9000;
       fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include        fastcgi_params;
    }
}

2. 运行php-fpm

     默认的有php55版本,安装php也可以通过brew来做,直接来运行

/usr/local/opt/php55/sbin/php-fpm --fpm-config /usr/local/etc/php/5.5/php-fpm.conf --daemonize
  1. 其中需要先启动php-fpm,这个是默认监听9000端口处理php文件的请求,不然会出现502的错误
  2. 访问如 http://localhost/index.php 可能出现403的情况,可能的情况有 a. nginx设置的当前root目录下没有index的文件索引。b. nginx对当前目录没有访问权限 chmod -R 755 设置。 c . 设置nginx用户, 默认会是nobody,首先ls -al 看下nginx.conf 文件用户权限,如 -rw-r--r--  1 rory  admin   3.8K  1  7 10:40 nginx.conf, 则在nginx.conf 顶部添加 user rory admin; 也可以单独添加用户如 www-data,然后再把这个用户添加到目录的拥有者中。
  3. 切记 .... 在改动任何nginx的conf时 先nginx -t 检查是否语法OK,然后重启

3. 运行PHP工程

       目前的项目是yii框架,算是第一次接触,也是 controller + model + service 的结构,其中的运行原理如url匹配大致了解之后,就开始开发了,后面在补yii框架内部的原理在巴巴拉拉 ... 就酱 !