第一篇博文,整理一下关于Mac下安装本地LNMP环境的一些坑
安装的主要步骤是按照以下这篇文章进行的http://blog.csdn.net/w670328683/article/details/50628629,但是依然遇到了一些大大小小的坑(一个环境搞了一天多,简直烦死个人)。
先安装的是PHP7,然后是nginx,由于下载源码包的速度实在感人,就直接用brew装的,然后大大小小的问题就来了(从一个坑掉入另一个坑,然后不断重复这个过程)。
首先是路径问题,在我的电脑上brew安装的东西路径都放在/usr/local/Cellar下边,这个路径着实让人很恼火,然后php7和nginx的配置文件都会放在/usr/local/etc/下边,这是我在翻了好几遍目录,改了好几遍/etc下边的配置文件之后才得出的一个令人哭笑不得的结论。在上边提到的文章中用ln命令给/usr/local/etc/下的配置文件建立了在/etc/目录下的链接,这样就看起来像是配置文件在/etc目录下边一样了,但是这堆一个对linux目录不是很熟悉的人来说确实时间比较恼火的事情(当然还是个人问题,看来要补习一下linux的文件目录知识了)。
然后是关于启动问题,需要在配置文件中配置好pid文件和log文件的路径,一般使用默认值即可,这样pid文件就会放在/usr/local/var/run目录下(php-fpm和nginx会分别对应一个pid文件,主要作用就是存放进程号),error_log会存放在/usr/local/var/log目录下。如果需要改路径的话不要改到一些诡异的位置或者没有权限的位置中去,不然会蛋疼死。
之后遇到的一个大坑就是nginx的虚拟服务器配置,上边提到的文章中有这么一步操作
sudo ln -s /usr/local/etc/nginx/servers /etc/nginxservers
我就是直接照做的,然后在这里死了两个小时......为什么呢?因为在/usr/local/etc/nginx/servers目录下边根本没有配置文件,所以,只需要简单地在这个目录下边创建一个default.conf文件,然后把它include在/usr/local/etc/nginx/nginx.conf文件中就好了,至于要不要把它ln到/etc目录下边就看个人喜好了.
php-fpm的启动命令php-fpm -D,如果要重启,就直接killall php-fpm然后在启动;nginx启动的话可以认为有两种方式,一种是去看nginx.pid里边的进程号然后 kill -HUP 进程号 ,另一种就是 ps aux | grep nginx 找到它的进程号之后重启;也可以 kill -INT 进程号 然后通过nginx启动命令来启动。
另外,nginx -h 会提供各种各样的nginx命令帮助,nginx -V 可以显示nginx的各种配置信息,遇到坑的同学可以通过这个命令去找需要的配置文件。
最后是配置php7的memcache扩展和redis扩展,这个本来想用brew装的,奈何没有找到扩展包,就直接用源码包编译了,如果说有遇到坑的话就是装autoconf和brew link的一些问题,这些都按提示步骤走就行了,遇到坑就FQ右转找google,墙太高就出门左转找度娘。
发博文这种事情是很有益于技术知识积累的,今天是个开始,以后每天找点东西来一发。
第一篇博文,整理一下关于Mac下安装本地LNMP环境的一些坑的更多相关文章
- Mac下docker搭建lnmp环境 + redis + elasticsearch
之前在windows下一直使用vagrant做开发, 团队里面也是各种开发环境,几个人也没有统一环境,各种上线都是人肉,偶尔还会有因为开发.测试.生产环境由于软件版本或者配置不一致产生的问题, 今年准 ...
- mac下安装c++开发环境
mac下安装c++开发环境 1 注册apple id 按照apple注册步骤注册apple id,我注册时遇到如下问题 apple store完成创建apple id步骤中,选择付款方式和账单地址后, ...
- Mac 下安装Phonegap开发环境
Mac 下安装Phonegap开发环境 2014.09.11 星期四 评论 0 条 阅读 5,613 次 作者:野草 标签:phonegap ios mac 什么是Phonegap呢?Phon ...
- mac下安装安卓开发环境
对于做ios的人来说,安装安卓开发环境,最好是在mac下安装了,我的mac是10.8.2,64位系统的 安卓开发环境需要下面几个东西: 1 jdk(mac下已经默认有了,可以在命令提示符下输入java ...
- 转-MAC 下安装PHONEGAP开发环境
来自:http://jinzhe.net/post/8.html 什么是Phonegap呢?Phonegap是一个利用HTML5去开发App的框架.可以为安卓.iOS.WP.黑莓.火狐等移动操作系统. ...
- Mac下安装配置NMP环境
第一次在Mac上安装NMP,记录下 因为下面环境的安装都是基于homebrew的,所以如果没有安装他的话,要先安装他(官网:https://brew.sh/index_zh-cn.html) 安装ho ...
- mac下安装配置nginx环境
本文介绍 nginx 在mac上的安装. 我是通过brewhome 来安装的. brew install nginx 一路顺畅. 下面是安装信息. 复制代码 代码如下: hematoMacBook-P ...
- 2019 Mac下安装运行Homestead环境
为了能提高自己的价值,还是要坚持学习新东西才行.这不,从多学会一个PHP开发框架开始.在开始使用Laravel之前,很多"经验"告诉我要先安装Homestead,至于好处,大家可以 ...
- mac下安装Java开发环境
1.安装JDK 打开网页,进入jdk官网下:http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载后,进入finde ...
随机推荐
- angularjs的一些坑关于 $sec
今天遇到$sec的问题 app.filter('to_trusted', ['$sce', function ($sce) { return function (text) { return $sce ...
- python【6】-函数式编程
一.高阶函数 map,reduce 1.map() 函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回. def f(x): retur ...
- NetworkComms V3 模拟登陆
演示NetworkComms V3的用法 例子很简单 界面如下: 服务器端代码: 开始监听: //服务器开始监听客户端的请求 Connection.StartListening(ConnectionT ...
- 使用 AngularJS 和 Electron 构建桌面应用
GitHub 的 Electron 框架(以前叫做 Atom Shell)允许你使用 HTML, CSS 和 JavaScript 编写跨平台的桌面应用.它是io.js 运行时的衍生,专注于桌面应用而 ...
- c#文本框限制输入内容
//限制输入不能为中文和全角 private void zhbh_KeyPress(object sender, KeyPressEventArgs e) { ...
- Struts2 Action下面的Method调用方法
1. 在struts.xml中加入<constant name="struts.enable.DynamicMethodInvocation" value="tru ...
- Java条件语句练习
/*System.out.println("请输入三个数字:");//输入三个数字,返回最大的那个. int a,b,c,big; Scanner d = new Scanner( ...
- JAVA动手动脑
1.运行 TestInherits.java 示例,观察输出,注意总结父类与子类之间构造方法的调用关系修改Parent构造方法的代码,显式调用GrandParent的另一个构造函数,注意这句调用代码是 ...
- VBA嘘嘘嘘(1)——将Excel数据填入到已存在的Word模板表格(实例应用)
傻瓜可以写出机器读懂得代码,但写出让人能读懂的代码的是优秀程序员 Sub 填充() Application.ScreenUpdating = False 'ScreenUpdating 是控制你的ex ...
- CentOS集群安装Tmux
对于Linux的常用者,如果你说你不会tmux,那你就out啦~ 1. 什么是Tmux? 先来看看Tmux长什么样. tmux是一个优秀的终端复用软件,类似GNU Screen,但来自于OpenBSD ...