美文网首页php
mac搭建PHP开发环境

mac搭建PHP开发环境

作者: 左木北鱼 | 来源:发表于2019-03-28 22:43 被阅读0次

1.安装brew

  • 1.1 获取install文件
    把官方脚本拿下来
    curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install >> brew_install

当前命令执行完后,会在/usr/local/Homebrew下生成一个brew_install文件

  • 1.2 更改脚本中的资源链接,替换成清华大学的镜像
    vim /usr/local/Homebrew/brew_install
就是把这两句 
BREW_REPO = “https://github.com/Homebrew/brew“.freeze 
CORE_TAP_REPO = “https://github.com/Homebrew/homebrew-core“.freeze 
更改为这两句 
BREW_REPO = “https://mirrors.ustc.edu.cn/brew.git “.freeze 
CORE_TAP_REPO = “https://mirrors.ustc.edu.cn/homebrew-core.git“.freeze 
  • 1.3 执行脚本
    /usr/bin/ruby brew_install
  • 1.4 brew常用命令
brew update #更新可安装包的最新信息,建议每次安装前都运行下
brew search pkg_name #搜索相关的包信息
brew install pkg_name #安装包

2.安装nginx

brew search nginx
brew install nginx
  • 配置
cd /usr/local/etc/nginx/
mkdir conf.d
vim nginx.conf
vim ./conf.d/default.conf

修改:nginx.conf

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;

新建:conf.d/default.conf

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

3.安装php-fpm

Mac OSX 10.9以后的系统自带了PHP、php-fpm,省去了安装php-fpm的麻烦。
这里需要简单地修改下php-fpm的配置,否则运行php-fpm会报错。

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文件输出路径不存在的错误。

停止php-fpm:sudo pkill php-fpm

  • 配置php-fpm:
    sudo php-fpm报错:

$ sudo php-fpm
Password:
[28-Mar-2019 20:07:37] WARNING: Nothing matches the include pattern '/private/etc/php-fpm.d/*.conf' from /private/etc/php-fpm.conf at line 125.
[28-Mar-2019 20:07:37] ERROR: No pool defined. at least one pool section must be specified in config file
[28-Mar-2019 20:07:37] ERROR: failed to post process the configuration
[28-Mar-2019 20:07:37] ERROR: FPM initialization failed
  • 解决方法:
    cd /private/etc/php-fpm.d
    sudo cp www.conf.default www.conf
$ cd /private/etc/php-fpm.d
$ ls
www.conf.default
$ sudo cp www.conf.default www.conf
Password:

4.安装mysql

安装:brew install mysql@5.7
启动:mysql.server start
关闭:mysql.server stop
配置:
修改密码:ALTER user 'root'@'localhost' IDENTIFIED BY 'newpassward'

注意:安装的版本,如果不选版本默认安装的8.*,可能会造成navicat连接不上的问题!!

Jiaheng:var jiaheng$ brew search mysql
==> Formulae
automysqlbackup            mysql-connector-c          mysql@5.5
mysql                      mysql-connector-c++        mysql@5.6
mysql++                    mysql-sandbox              mysql@5.7
mysql-client               mysql-search-replace       mysqltuner
mysql-cluster              mysql-utilities

==> Casks
homebrew/cask/mysql-connector-python     homebrew/cask/navicat-for-mysql
homebrew/cask/mysql-shell                homebrew/cask/sqlpro-for-mysql
homebrew/cask/mysql-utilities
Jiaheng:var jiaheng$ brew install mysql@5.7
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
gradle

==> Downloading https://homebrew.bintray.com/bottles/mysql@5.7-5.7.25.high_sierr
######################################################################## 100.0%
==> Pouring mysql@5.7-5.7.25.high_sierra.bottle.tar.gz
==> /usr/local/Cellar/mysql@5.7/5.7.25/bin/mysqld --initialize-insecure --user=j
==> Caveats
We've installed your MySQL database without a root password. To secure it run:
    mysql_secure_installation

MySQL is configured to only allow connections from localhost by default

To connect run:
    mysql -uroot

A "/etc/my.cnf" from another install may interfere with a Homebrew-built
server starting up correctly.

mysql@5.7 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.

If you need to have mysql@5.7 first in your PATH run:
  echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile

For compilers to find mysql@5.7 you may need to set:
  export LDFLAGS="-L/usr/local/opt/mysql@5.7/lib"
  export CPPFLAGS="-I/usr/local/opt/mysql@5.7/include"


To have launchd start mysql@5.7 now and restart at login:
  brew services start mysql@5.7
Or, if you don't want/need a background service you can just run:
  /usr/local/opt/mysql@5.7/bin/mysql.server start
==> Summary
🍺  /usr/local/Cellar/mysql@5.7/5.7.25: 319 files, 234.4MB

最后,运行php环境:

  • 重启nginx:sudo nginx -s reload
  • 启动PHP服务:sudo php-fpm;
    image.png

5.配置虚拟机

  • 5.1新建conf配置
    例如:/usr/local/etc/nginx/conf.d/test
server {
  listen    80;
  server_name tianhong;

  root /Volumes/HHD/project/test

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

}
  • 5.2配置/etc/hosts
    添加:127.0.0.1 test
    这样在浏览器就可以直接访问: http://test

相关文章

网友评论

    本文标题:mac搭建PHP开发环境

    本文链接:https://www.haomeiwen.com/subject/ahacbqtx.html