ubuntu中使用nginx把本地80端口转到其他端口

在开发过程中,由于Linux默认限制,无法直接使用80端口。本文介绍如何在Ubuntu上安装nginx并配置端口转发,将80端口请求转发到8080端口,实现通过localhost访问本地项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为只是在开发的过程中遇到要使用域名的方式访问, 而linux默认把1024以下的端口全部禁用.
在网上找了N多方式开启80端口无果后, 方才想到使用代理的方式转到其他端口.
自然而然就想到了用Nginx, 但在配置过程中也是出现了各种奇葩问题, 所以先做个笔记省得之后忘了.

注: 本文只是在Nginx上做最简单的端口跳转.

安装nginx

在ubuntu中安装nginx比较简单.

    sudo apt-get install nginx

坐等安装好即可.
或者也可以通过源码安装. 可参考: http://www.cnblogs.com/skynet/p/4146083.html

配置转发

nginx的默认安装路径在/usr/local/nginx下.
nginx的默认配置在/etc/nginx下.

把80端口指向8080端口, 方法如下:

修改nginx.conf

  • 注释掉改行:
    #nginx.conf 中 http 段最后会有以下这两句.
    #这样你就可以把已经配置好的各种 server conf 放在 sites-available 里,
    #如果想启用的时候只要复制或者软连接到上面两个文件夹里,想关掉或者更改配置的时候也比较方便.
    #
    #而默认情况下sites-enabled目录下会放一个sites-available/default的软链接,
    #在sites-available/default已经对localhost进行设置, 
    #导致无论你怎么修改nginx.conf对本地端口进行配置都不会生效. 一直报404错误.
    #所以此处要把sites-enabled注掉. 或者把该软链接换掉.
    #
    include /etc/nginx/conf.d/*.conf;
    #include /etc/nginx/sites-enabled/*; 
  • 在http配置项中增加如下内容:
    server {
        listen 80;
        server_name localhost;

        location / {
            proxy_pass http://localhost:8080;
            proxy_redirect off;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
  • 重启nginx
    sudo service nginx restart //或者 sudo nginx -s reload
  • 然后就可以直接通过localhost/index.htm来访问8080端口的项目了.

nginx简单的操作命令

    sudo service nginx start        #启动
    sudo service nginx stop         #停止
    sudo service nginx restart      #重新启动
    sudo service nginx reload       #重新启动

    sudo nginx -s start     #启动
    sudo nginx -s stop      #停止
    sudo nginx -s restart   #重新启动
    sudo nginx -s reload    #重新加载配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值