专栏首页用户画像MAC使用nginx分发80至8080端口

MAC使用nginx分发80至8080端口

一、问题背景

由于项目本身的原因,开发必须使用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安装库

brew search nginx
brew install nginx

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

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

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,如下:

sudo cp /usr/local/opt/nginx/*.plist /Library/LaunchDaemons

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

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

四、分发效果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Jboss安装

     1、下载http://pan.baidu.com/s/1bnmYN7p,解压jboss-as-7.1.1.Final.zip即完成安装

    week
  • 剑指offer 二叉树的下一个结点

    给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。

    week
  • python菜鸟教程 | 变量 variable

    可以将一个数值,或者字符串串附值给自变量,如apple=1 中,apple为自变量的名称,1为自变量的值。 也可以将字符串赋值给自变量 apple='iphon...

    week
  • react native使用WebView加载本地html部署方案

    十里桃花舞丶
  • ajax实现简单的点击左侧菜单,右侧加载不同网页

    王小婷
  • html概述和基本结构 - html的helloworld

    HTML是 HyperText Mark-up Language 的首字母简写,意思是超文本标记语言,超文本指的是超链接,标记指的是标签,是一种用来制作网页的语...

    Devops海洋的渔夫
  • 生信人的R语言视频教程-语法篇-第十一章:R中的网络爬虫

    用任何语言做爬虫必须要了解的就是网页语法,网页语言无非就是HTML,XML,JSON等,因为正是通过这些我们才能在网页中提取数据,过多的就不再描述,大家可以自行...

    DoubleHelix
  • 练手爬虫用urllib模块获取

    小小咸鱼YwY
  • requests-html快速入门

    版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/...

    乐百川
  • HTML中的相对路径与绝对路径

    HTML初学者会经常遇到这样一个问题,如何正确引用一个文件。比如,怎样在一个HTML网页中引用另外一个HTML网页作为超链接(hyperlink)?怎样在一个网...

    猿人谷

扫码关注云+社区

领取腾讯云代金券