由于项目必须要启动80端口,但是mac系统中非root用户无法直接使用1024以下的端口

2、释放apache的80端口

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

1
sudo vim /etc/apache2/httpd.conf

Listen 8011

改动后,重启生效

1
sudo /usr/sbin/apachectl restart

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

3、使用Nginx分发80端口到8080端口

  1. 安装brew

见官网:https://brew.sh/index_zh-cn.html

  1. 使用Homebrew安装库

    1
    2
    brew search nginx
    brew install nginx
  2. 安装好了后,修改配置

    1
    sudo vim /usr/local/etc/nginx/nginx.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
server {
listen 80;
server_name localhost l.sogou.com; 大专栏  MAC使用nginx分发80至8080端口/span>
#access_log logs/host.access.log main; location ~* ^/h5/{
proxy_pass http://127.0.0.1:8091;
} location ~* ^/weixin/{
proxy_pass http://127.0.0.1:8093;
} location ~* ^/api/{
proxy_pass http://127.0.0.1:8087;
} 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:代理到哪个地址

  1. Nginx开机启动

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

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

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

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

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

  1. 修改配置 重启生效
    1
    2
    3
    4
    sudo vim /usr/local/etc/nginx/nginx.conf
    
    cd /usr/local/opt/nginx/bin/
    sudo ./nginx -s reload

MAC使用nginx分发80至8080端口的更多相关文章

  1. 电信固定ip宽带80与8080端口踩坑

    本文只是作为记录,避免后面遇到此类问题耗费时间. 实际情况:公司有个固定电信宽带是固定IP的,想把固定IP映射到测试环境ip,实现可以公网通过固定ip访问,内网通过局域网ip访问. 测试环境服务是占用 ...

  2. ISP封了80和8080端口

    今天用自己的电脑做服务器,绑定了域名,路由映射什么的都做了,但是80和8080端口在外网怎么都访问不了,只在内网可以访问. 最后看有人说联通封了80和8080端口,真是遗憾,谨记于此,以后有时间了再来 ...

  3. tomcat、Apache服务器外网无法访问80和8080端口,其他端口可以访问

    tomcat.Apache服务器外网无法访问80和8080端口,其他端口都可以访问,很明显地看出这是网络运营商的问题,他们把80和8080端口对外访问屏蔽了. 解释:这两个端口是常用的HTTP协议端口 ...

  4. CentOS/Linux 开放80、8080端口或者开放某个端口

    装载系统的时候只开启了22端口.结果再装完Nginx+php+mysql 后不能访问网站. iptables -L -n 查看防火墙设置发现没开启80端口 由于Linux防火墙默认是关闭的.可以用两种 ...

  5. Linux开放80、8080端口或者开放某个端口

    装载系统的时候只开启了22端口.结果再装完Nginx+php+mysql 后不能访问网站. 查看防火墙设置发现没开启80端口 iptables -L -n 由于Linux防火墙默认是关闭的.可以用两种 ...

  6. centos7开启80和8080端口

    开启8080端口 firewall-cmd --permanent --add-port=8080/tcp firewall-cmd --reload 重定向80端口到8080端口firewall-c ...

  7. Ubuntu16.04中nginx除80之外其他端口不能访问

    不废话, 大多数都以为是ufw防火墙的问题. 但我的是因iptables防火墙, 坑死我了. 查了好多也没查到怎么在Ubuntu关闭iptables, 索性直接卸载 apt-get remove ip ...

  8. mac下8080端口到80端口的转发

    MAC OS 本质上还是 Unix 系统, Unix 系统大多默认情况下非root用户是无法使用小于1024的常用端口的.这时候如果你开发中需要在普通用户下用到80端口, 比如 tomcat, 比如 ...

  9. Mac OS X 绑定80端口,不装nginx的小技巧

    Mac OS X 因为要绑定80端口需要ROOT权限, 但是如果用root权限启动eclipse或tomcat又会造成, 启动创建的各类文件是root的,普通用户无法删除. 为此, 我们可以通过pfc ...

随机推荐

  1. sbt 设置

    修改 sbtopts for shell # zkk -sbt-dir D:/DATA/.sbt -sbt-boot D:/DATA/.sbt/boot -ivy D:/DATA/.ivy2 修改 s ...

  2. Linux图形界面与命令行界面切换

    1.没有安装图形界面的Linux系统执行下面命令安装图形界面: yum groupinstall "GNOME Desktop" "Graphical Administr ...

  3. MySQL出现错误1030-Got error 28 from storage engine

    磁盘空间不足引起的!1030-Got error 28 from storage engine df -h 清理空间

  4. 吴裕雄--天生自然C语言开发:指针

    #include <stdio.h> int main () { int var1; ]; printf("var1 变量的地址: %p\n", &var1 ) ...

  5. 吴裕雄--天生自然C语言开发:内存管理

    #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { ]; char *d ...

  6. 【SpringCloud】Eureka入门与原理

    为了开发效率高效和业务逻辑清晰,越来越多的项目采用分布式系统.分布式最重要的就是注册中心了.Eureka是SpringCloud原生提供的注册中心,来look一波吧. 超光速入门 服务端 引入依赖: ...

  7. VBA自动点击IE的浏览按钮、自动选择路径、自动关闭打开文件对话框

    VBA调用InternetExplorer操作IE浏览器,自动弹出文件选择对话框时,VBA会处于阻塞状态,你必须手工关闭文件选择对话框,VBA才能继续向后运行. 例如下面网址,就有一个文件浏览按钮: ...

  8. 96)PHP,文件上传(2)

    (1)那么既然看到文件即使上传成功,但是只是在脚本周期内有效,脚本只要结束(脚本结束其实很快的),文件就会自动消失,那么怎么才能永久存储文件呢: 函数: Move_uploaded_file(上传临时 ...

  9. .net core 读取json文件

    核心代码 Program.cs: using System; using System.IO; using Microsoft.Extensions.Configuration; namespace ...

  10. python往mysql数据库中写入数据和更新插入数据

    本文链接:https://blog.csdn.net/Mr__lqy/article/details/85719603 1. 连接mysql import pymysql db = pymysql.c ...