Mac系统开发常见问题-80端口被占用的解决方案2-使用Nginx解决

原创 2016年05月31日 21:16:17
起因:
     开发中,eclipse中无法使用80端口(因mac 本身已经占用了80端口),导致调试项目的时候,需要使用8080端口调试,不是很方便,所以,想到使用nginx做代理,然后做转发到8080端口。


思路:
     无非就那么几种:
          1、干掉80端口的占用程序,直接让tomcat占用
          2、端口转发,将80端口转发到其他端口上(mac上的ipfw)
          3、第三方的代理软件(eg:nginx)
纠结:
     前两种方式尝试了很多次,木有成功。。。。中间百度gogole了很多次,网上有很多文章介绍如何使mac开放80端口,但是。。。然并卵(PS:至少在我的电脑上木有管用),具体可以百度尝试。

解决办法:
     1、安装nginx
     2、设置nginx转发

具体步骤如下:(参考地址:http://blog.csdn.net/eagle_naixue/article/details/26063871
1、Download latest PCRE. (地址:http://www.pcre.org/
2、安装
$ cd ~/Downloads $ tar xvzf pcre-8.5 $ cd pcre-8.5 $ sudo ./configure --prefix=/usr/local $ sudo make $ sudo make install 

安装Nginx

1、Download latest nginx from Nginx.org. (地址:http://nginx.org/
2、安装
$ cd ~/Downloads $ tar xvzf nginx-1.6.0.tar.gz $ cd nginx-1.6.0 $ sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-cc-opt="-Wno-deprecated-declarations" $ sudo make $ sudo make install 

开启Nginx

1、将/usr/local/nginx/sbin加入到环境变量里
2、运行
$ sudo nginx 
3、打开浏览器 http://localhost,如果看到如下界面表明nginx启动正常了
nginx.png
4、停止
$ sudo nginx -s stop

后面就是配置nginx,监听80端口,然后跳转到8080端口,
eg:

server {
listen 80;
server_name www.dutycode.com test.dutycode.com;
add_header Cache-Control private;
charset utf-8;
fastcgi_intercept_errors on;
location / {
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_intercept_errors on;
}
}
浏览器输入www.dutycode.com即可看到结果
版权声明:本文为博主原创文章,未经博主允许不得转载。

一站式解决mac os 80端口占用问题

在使用mac os 进行web开发时,会遇到80端口已经被占用的情况。解决这个问题可以通过以下几个步骤。 1、使用lsof -i:80查看当前占用80端口的进程,如果有就kill掉。 2、关闭ma...

Mac系统开发常见问题-80端口被占用的解决方案1-使用pfctl做网络层转发

IntelliJ IDEA之Tomcat启动相关报错: 1.EvnetLog报错:Error running test1: Address localhost:80 is already in us...

mac osx使用80端口(使用nginx解决)

起因:      开发中,eclipse中无法使用80端口(因mac 本身已经占用了80端口),导致调试项目的时候,需要使用8080端口调试,不是很方便,所以,想到使用nginx做代理,然后做转发到...

MAC 下解决端口占用的问题

查看端口号终端输入:sudo lsof -i tcp:port 将port换成被占用的端口(如:8086、9998) 将会出现占用端口的进程信息。杀死占用端口的PID进程找到进程的PID,使用kil...

MAC下解决端口占用的问题

查看端口号 终端输入:sudo lsof -i tcp:port 将port换成被占用的端口(如:8086、9998) 将会出现占用端口的进程信息。 杀死占用端口的PID进程 找到进程的PI...

Mac 80端口占用

问题tomcat 默认端口是 8080,但是我的一个程序必须用 80 端口启动,才能根据域名去 cas 校验,在idea 中设置了 tomcat 的启动端口是 80 后,并没有起作用,报了 “80端口...

MAC解决端口占用

1.前言 启用goagent、firefly等服务的时候,如果非正常退出,再次启动经常会遇到address already in use,端口被先前启动的服务进程所占用,导致服务无法使用。这种情况,...
  • SoulHao
  • SoulHao
  • 2014年01月11日 10:23
  • 25427

Mac 上使用80端口

Mac OS X  默认Web共享使用Apache 所以80端口是被占用的。  首先需要修改的配置文件。最新的系统此配置文件已经由原来的/etc/httpd 目录更换到了/etc/apach...

彻底解决eclipse端口占用问题

使用eclipse开发Android软件的过程中,经常会看到以下错误:

eclipse 中tomcat工程的server.xml改为80 端口报异常端口被占用

eclipse 中tomcat工程的server.xml改为80 端口报异常端口被占用 我在server中修改了tomcat的文件server.xml 的http端口为80 结果无法启动,报端口占...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mac系统开发常见问题-80端口被占用的解决方案2-使用Nginx解决
举报原因:
原因补充:

(最多只允许输入30个字)