欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mac 下搭建 apache / nginx+php+mysql nginxapachemysqlphp 

程序员文章站 2022-07-15 13:11:10
...

       Windowslinuxmac 下安装软件都可以使用图形界面,通过鼠标点击操作安装,但是和linux相同的是mac同样可以使用终端指令安装程序,但是在安装之后一系列依赖关系的配置却十分繁琐,因此可以先安装brew(全称homebrew),再使用brew安装其它软件。

       Brew安装程序时如果出现报错除非是一开始的 brew install xxx 的指令输错不然都会有提示如何改正错误的指令在爆出的错误下方显示,所以认真看错误提示可以省不少事,一系列的配置文件也能自动搭配,安装完成后最后一行显示的路径就是文件的安装路径。

Mac下安装brew$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

       就开发环境来说apachenginx是同一层次的程序,mysql是数据库,php是链接两者的脚本语言,因此安装时最好先安装apachenginx,之后再安装php或者mysql就随便了,而且php在安装时需要使用指令,添加依赖或者编译到某些程序中便于使用,这时先装好 apache nginx 避免头脑混乱

开发环境: LAMP (Linux+Apache+Mysql+Php)或者 LNMP (Linux+Nginx+Mysql+Php)

       言归正传,本菜在安装apache时在网络上找了许久但是所有教程的帖子全部一样,好像是从同一篇帖子复制过来的一样,而且都没有贴上原文地址都对原文有删减,直到最后找到了一篇良心博客,贴上了原文地址,这才找到了 apache 安装方法,顺便找到了 php 多版本切换的方法,mac上虽然预装了 apache php 但是也移除了 apache 的部分脚本,因此使用 brew 重新安装一遍并非无用功,而且详细了解apache的配置文件也能更清晰的了解 apache以及它提供的服务。

这里附上原文链接:https://zhuanlan.zhihu.com/p/24614926

       然而另外的 nginx mysql 则简单很多直接一条指令 brew install mysql nginx 就可以安装完成。

       安装只是第一步,之后就是为了使他们正常运行起来而修改配置文件,一般情况下配置文件为  .ini   或者  .conf.default  一般配置文件会先复制一份再修改复制的一份,用户权限对最初的版本还是低了点(sudo、强制执行之类的另说)nginx 在配置的时候主要注意端口不要和其他服务器重复,另外就是

        location ~ \.php$ {

            root           html;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

            include        fastcgi_params;

        }

        error_page   500 502 503 504  /50x.html;

        location = /50x.html {

            root   html;

        }

(实际上这类文档在网上一搜一大把。。。)

 

接下来是关于两项的启动方式

Apache

启动:sudo apachectl start

停止:sudo apachectl stop

重启:sudo apachectl -k restart

nginx:

首先:cd /usr/local/cellar/nginx/1.10.3/bin

这是安装目录,bin 文件意味着啥你懂

然后:sudo ./nginx

判断配置文件是否正确:sudo ./nginx -t

重启:sudo ./nginx -s reload

关闭:

  查询nginx主进程号:ps -ef|grep nginx; 

      正常停止   sudo kill -QUIT 主进程号;

 

      快速停止   sudo kill -TERM 主进程号