前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MAC使用nginx分发80至8080端口

MAC使用nginx分发80至8080端口

作者头像
week
发布2018-08-24 10:42:25
1.7K0
发布2018-08-24 10:42:25
举报
文章被收录于专栏:用户画像用户画像

一、问题背景

由于项目本身的原因,开发必须使用80端口实现,而在MAC系统中非Root用户无法直接使用1024以下的端口

二、首先释放Apache服务80端口

由于Mac OS是自带Apache服务的,它本身占用了80端口,首先你需要将Apache的监听端口改为其他或者直接将其卸载,作者是改掉它的监听端口为8011。

sudo vim /etc/apache2/httpd.conf

改动之后,将其重启 sudo /usr/sbin/apachectl restart

到这里,你已经将80端口释放掉了。

sudo lsof -i :80

查看端口占用状况

三、使用Nginx分发80端口至8080端口

1、使用Homebrew安装库

代码语言:javascript
复制
brew search nginx
brew install nginx

2、这样安装好之后,修改配置

sudo vim /usr/local/etc/nginx/nginx.conf

代码语言:javascript
复制
server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
	    proxy_pass http://127.0.0.1:8080;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
           root   html;
        }
    }

server下的结点: listen:监听80端口 server_name:转发到哪个地址 proxy_pass:代理到哪个地址

3、Nginx开机启动

其次你需要了解的就是plist文件。plist就是property list format的意思,是苹果用来保存应用数据的格式,其实就是个xml。可以在/usr/local/opt/nginx 下找到nginx对应的plist文件,比如在作者电脑上是 homebrew.mxcl.nginx.plist 。

需要把这个文件复制到 /Library/LaunchDaemons 下,系统启动时启动。 也可以复制到 /Library/LaunchAgents下,在用户登录时启动。  接着执行launchctl load -w,如下:

代码语言:javascript
复制
sudo cp /usr/local/opt/nginx/*.plist /Library/LaunchDaemons

sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.nginx.plist

最后,重启你的机器,你会发现nginx在80端口启动了,试着通过http://localhost直接访问。

四、分发效果

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年03月30日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档