我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

mac系统下,默认是自带apache的,但是通常的线上环境又是nginx。苏南大叔就需要在本地开发机上面搭建个nginx的环境,在这个过程中,apachenginx之间的设置是如何调整的呢?这点谜团将在本文中揭晓。

苏南大叔:mac系统,nginx和apache如何共存? - nginx-apache-mac
mac系统,nginx和apache如何共存?(图9-1)

基本上来说就是:默认的apache占用了端口80,但是网络新贵nginx也想要占用这个端口80apache去占用端口8080可好?

修改apache端口号

apache的默认配置文件位置为:/etc/apache2/ 。修改成端口8080,这点很好操作,也不会出什么问题,这里不做赘述。

vi /etc/apache2/httpd.conf
vi /etc/apache2/extra/httpd-vhost.conf

一般来说需要修改/etc/apache2/httpd.conf/etc/apache2/extra/httpd-vhost.conf 这两个文件。毕竟nginx的应用场景要远大于apache,所以,苏南大叔这里需要把80端口让给nginx。苏南大叔把apache配置中的80字样修改成了8080字样,重启生效。

苏南大叔:mac系统,nginx和apache如何共存? - apache基本配置
mac系统,nginx和apache如何共存?(图9-2)

下面命令,用于测试配置文件和重启apache。关联文章:

sudo apachectl -t
sudo apachectl restart

如果一切顺利的话,您将看到如下界面。

苏南大叔:mac系统,nginx和apache如何共存? - 006
mac系统,nginx和apache如何共存?(图9-3)

下面的是个最新的截图,做个补充说明。

苏南大叔:mac系统,nginx和apache如何共存? - httpd-apache
mac系统,nginx和apache如何共存?(图9-4)

brew安装nginx并进行配置

使用brew安装nginx是最简单快捷的了。命令如下:

sudo brew install nginx

没有安装brew命令的话,请参考下面这篇文章:

苏南大叔:mac系统,nginx和apache如何共存? - 000
mac系统,nginx和apache如何共存?(图9-5)

默认的配置文件位置为:/usr/local/etc/nginx/nginx.conf 。然后我们把里面默认的8080字样修改成80字样。

苏南大叔:mac系统,nginx和apache如何共存? - 001
mac系统,nginx和apache如何共存?(图9-6)

但是毕竟nginx是外来软件,并不是mac系统默认的,所以80端口也不是说占用就占用的。苏南大叔这里需要设置一下相关权限。

下列命令中的nginx版本的详细路径,可以通过brew info nginx来查看。

sudo chown root:wheel /usr/local/Cellar/nginx/1.12.2_1/bin/nginx
sudo chmod u+s /usr/local/Cellar/nginx/1.12.2_1/bin/nginx
sudo chown -R root:wheel /usr/local/etc/nginx/ 

我们可以这样测试配置是否修改正确,然后重载nginx的配置文件。当然,可能还可以重启nginx服务。

nginx -t
nginx -s reload
brew services restart nginx

如果一切顺利的话,您将看到如下界面。

苏南大叔:mac系统,nginx和apache如何共存? - 004
mac系统,nginx和apache如何共存?(图9-7)

下面的是个最新的截图,做个补充说明。

苏南大叔:mac系统,nginx和apache如何共存? - nginx-t
mac系统,nginx和apache如何共存?(图9-8)

苏南大叔:mac系统,nginx和apache如何共存? - nginx-2
mac系统,nginx和apache如何共存?(图9-9)

相关链接

结论

本文也是个新瓶装老酒,知识点在苏南大叔以前的文章中,都有提及,这里也仅仅是重新总结一下罢了。更多苏南大叔的nginx相关文章,请点击这里查看:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   nginx    apache