由于工作的需要,这几天在mac上安装LNMP开发环境,安装了好几天了。后面才了解到mac有自带的php,由于版本过低,重新安装了7.0.30的版本
1.安装Homebrew
homebrew是mac系统下的软件包管理工具,非常方便在mac上进行安装或者卸载软件
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2.安装php
mac系统上默认安装了php5.6, 项目的需要高版本的php,并把mac系统的默认php版本指定为php7
// 更新brew
$ brew update
// 如果没有该目录,则创建
$ sudo mkdir /usr/local/var
$ sudo chmod 777 /usr/local/var
$ sudo mkdir /usr/local/sbin/
$ sudo chown -R <username>:<group> /usr/local/sbin/
// 安装php7前,先关闭老版本的PHP55,并解除/usr/local/bin/php软链接
$ brew unlink php55
// 我们可以通过brew options命令来查看安装选项
$ brew options php70
// 开始安装PHP7
$ brew install php70 (--with-apache 假如需要生成apache的libphp7.so,则添加该安装选项)
// 查看php版本
$ php -v
PHP 7.0.30 (cli) (built: Dec 5 2016 14:49:24) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
3.配置php及php-fpm
可执行文件以及配置文件路径
php, phpize, php-config /usr/local/etc/php
php-fpm /usr/local/opt/php70/sbin/php-fpm
php.ini /usr/local/etc/php/7.0/php.ini
php-fpm.conf /usr/local/etc/php/7.0.php-fpm.conf
修改php-fpm配置
$ sudo vim /usr/local/etc/php/7.0/php-fpm.conf
添加php-fpm为开机启动项
$ mkdir -p ~/Library/LaunchAgents
$ cp /usr/local/opt/php70/homebrew.mxcl.php70.plist ~/Library/LaunchAgents/
$ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist
查看php-fpm是否启动成功
ps aux | grep php-fpm
4.安装nginx
brew install nginx
添加nginx为开机启动项
$ mkdir -p ~/Library/LaunchAgents
$ cp /usr/local/Cellar/nginx/1.15.0/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
$ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
设置权限
// 为了监听1024以下端口,需修改nginx所属者
$ sudo chown root:wheel /usr/local/Cellar/nginx/1.15.0/bin/nginx
$ sudo chmod u+s /usr/local/Cellar/nginx/1.15.0/bin/nginx
启动nginx
sudo nginx
重新加载配置 | 重启 | 停止 | 退出 nginx
nginx -s reload | reopen |stop | quit
5.配置nginx
sudo vim /usr/local/etc/nginx/nginx.conf
配置nginx虚拟主机
server {
listen 80;
server_name localhost;
#设置网站的根目录
root /Users/maqin/work/demo;
#网站默认首页
index index.html index.htm index.php;
charset utf-8;
location / { #修改为Laravel转发规则,否则PHP无法获取$_GET信息,提示404错误
try_files $uri $uri/ /index.php?$query_string;
}
#error_page 404 /404.html
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
sendfile off;
client_max_body_size 100m;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
}
location ~ /\.ht {
deny all;
}
}
重启nginx
nginx -s quit
sudo nginx
6.安装Apache
在mac系统中已经安装好了Apache服务,启动apache就可直接使用
在命令行中输入
sudo apachectl start
sudo apachect1 -v
查看Apache版本信息
在浏览器上输入127.0.0.1,检查Apache是否启动成功,如果启动成功,页面显示It works!
Apache的其他配置
关闭Apache
sudo apachecl stop
重启Apache
sudo apachectl restart
Apache安装路径
Apache服务默认安装路径在/private/eta/apache2,属于系统私有目录,
通过以下两张方式打开:
- 在终端命令行中输入 open /etc/
- 在Finder -> 前往 -> 前往文件夹中输入 /etc ,即可进入etc文件夹
Apache服务部署路径
Apache服务器路径在 /资源库/WebServer/Document/,我们的项目需要放置在该路径下
后续配置待更新
vim有两种模式:
1、命令模式、用于输入命令(输入法必须在英文状态)
(1)shift+V 可以选中一行;
(2)y 复制一行
(3)p 在当前行下方粘贴复制内容
(4)d$ 删除到行尾
(5)x 删除一个字符
(6):wq 保存退出
(7):q!不保存退出
(8):set nu 显示行号
(9)i 进入编辑模式
2、编辑模式:用于编辑按Esc可以切换回命令模式