gy123
V2EX  ›  问与答

老项目使用 8081 端口提供 app 的接口服务,到底有没有问题

  •  
  •   gy123 · Apr 25, 2023 · 5976 views
    This topic created in 1123 days ago, the information mentioned may be changed or developed.

    今天又跟前端同事争辩了一下,说 http 使用 8081 端口是否会导致 app 端网络请求出异常,我当然解释了不会~

    因为后期新项目我都采用的 https 服务端口号默认 443,老项目由于老版本 app 都用的非 80 及 443 的,也没什么问题,也就不用改动~

    目前已知会出现的问题: (1)使用非 https 会相对的不安全,但是我们 app 也不需要这个相对安全 (2)使用非 80 端口,对导致访问域名需要加端口号 8081,但是我们这个是 app 调用的,没有这个顾虑 (3)没法使用 http2 技术,导致请求慢,但是我 http 少了加密验证这步

    所以网络大佬们,提供对外的 http 协议服务,端口号非 80 及 443,真的有什么客户端导致请求异常的问题吗?

    Supplement 1  ·  Apr 25, 2023

    谢谢大家的回答了,我目前还是选择继续保持目前方式运行~

    当然我也赞同使用协议默认端口作为暴露服务,并且优先选择https的方式~

    Supplement 2  ·  Apr 25, 2023
    保持现有状态原因也在下面说明了,并且在我来之前到现在,稳定运行了三五年了,从没碰到类似禁用端口问题产生,顶多是他那端重启手机或重启路由器就好了,所以根本不是什么上网行为禁止~以上就是我的理有~
    Supplement 3  ·  Apr 25, 2023
    感谢 @Shazoo,觉得说的有道理
    koloonps
        1
    koloonps  
       Apr 25, 2023
    你 nginx 转发一下就行了,他说会就是会.人家开心就好
    gy123
        2
    gy123  
    OP
       Apr 25, 2023
    @koloonps 不不不,我就是不想改,不能让步,本来这人平时就各种甩锅
    03
        3
    03  
       Apr 25, 2023
    有可能,你要考虑客户乱七八糟的网络环境,比如可能有的公用网络只允许常见端口
    KagurazakaNyaa
        4
    KagurazakaNyaa  
       Apr 25, 2023
    有的端口会被浏览器认为不安全,但是 8081 不会
    gy123
        5
    gy123  
    OP
       Apr 25, 2023
    @03 还会有这种?会限制非常见端口?这么说吧,这个 app 使用也在大几万人,就他这端 app 会这样, 其他端没有,并且最后解决办法是重启路由器好的~所以我认为跟端口半毛钱关系没有
    gy123
        6
    gy123  
    OP
       Apr 25, 2023
    @XiLingHost 关键就是这个 8081 不提供浏览器访问,都是 app 端调用请求用的
    catning
        7
    catning  
       Apr 25, 2023
    异常是什么让他说出来啊,没说出来就不改,为啥要因为一个不基于事实的建议就去改配置
    gy123
        8
    gy123  
    OP
       Apr 25, 2023
    @eGlhb2Jhb2Jhbw 我就是生气这一点,我说了到底什么异常,你拿日志说事,别凭空猜测,想解决问题就要排除根本没有的问题
    koloonps
        9
    koloonps  
       Apr 25, 2023
    @gy123 你还是改下吧,有些人防火墙设置只能够访问 80,443 这一些常见端口.8081 不一定能够过,到时候锅就到你了
    gy123
        10
    gy123  
    OP
       Apr 25, 2023
    @koloonps 老 app 写死的请求地址首先就没法改,只能新版改,我也不想改,而且几年了没遇到过这种,顶多切换网络重启路由器手机
    koloonps
        11
    koloonps  
       Apr 25, 2023
    @gy123 nginx 兼容一下就行,问题不大(你不想改,你就去问老大要 SSL.到时候看老大怎么说)
    gy123
        12
    gy123  
    OP
       Apr 25, 2023
    @koloonps 没有老大,不是技术原因,是态度问题,不是由于这个原因导致的问题,我不想改..
    ysc3839
        13
    ysc3839  
       Apr 25, 2023 via Android
    既然老项目用着没问题那为啥要管?
    gy123
        14
    gy123  
    OP
       Apr 25, 2023
    @ysc3839 所以今早吵了一架,我就是不想管,新的我直接走 https 默认端口,老的我动了感觉真是我造成的问题了
    zero47
        15
    zero47  
       Apr 25, 2023
    @koloonps 「有些人防火墙设置只能够访问 80,443 」这是常识都没有吧,这是你访问服务器的机子,又不是别人访问你的机子,关你的防火墙什么事?
    gy123
        16
    gy123  
    OP
       Apr 25, 2023
    @zero47 好像说的有道理,哈哈哈哈
    koloonps
        17
    koloonps  
       Apr 25, 2023
    @zero47 你是不是忘记有一个东西叫上网行为管理器?
    corningsun
        18
    corningsun  
       Apr 25, 2023
    你们没运维么。。服务还是单点部署的?

    只要有负载均衡,多挂个 80 端口,有啥难度?
    exqibao
        19
    exqibao  
       Apr 25, 2023
    虽然改不难,但默认他这观点是有道理,挺难受的。
    Tink
        20
    Tink  
    PRO
       Apr 25, 2023
    @zero47 有的
    koloonps
        21
    koloonps  
       Apr 25, 2023
    @zero47 防火墙不是只有入站控制,人家还有出站控制.我之前的公司客户就是只有信息化办公室才有 22 端口的出站权限
    Tink
        22
    Tink  
    PRO
       Apr 25, 2023
    @zero47 很多内部网络是出口对端只能访问 80 和 443 ,外加几个邮件客户端端口
    gy123
        23
    gy123  
    OP
       Apr 25, 2023
    @corningsun 没运维也没难度,就是不想改..目前没遇到楼下大佬们说的行为防火墙的只放行 80 及 443 端口导致的无法使用 app 的情况
    gy123
        24
    gy123  
    OP
       Apr 25, 2023
    @exqibao 是的,主要就是对方技术不行,胡乱甩锅
    gy123
        25
    gy123  
    OP
       Apr 25, 2023
    @Tink 可能会有这种用户吧,也是少数,目前没有反应上来网络不能用的,可能用的移动网吧~
    gy123
        26
    gy123  
    OP
       Apr 25, 2023
    @koloonps 说的这种我想肯定是有的
    spacebound
        27
    spacebound  
       Apr 25, 2023
    [提供对外的 http 协议服务,端口号非 80 及 443,真的有什么客户端导致请求异常的问题吗?] 就这句话而言不会啊能有什么异常
    gy123
        28
    gy123  
    OP
       Apr 25, 2023
    @spacebound 是的
    playstation3
        29
    playstation3  
       Apr 25, 2023
    一般正常网络下没问题
    gy123
        30
    gy123  
    OP
       Apr 25, 2023
    @lqt19910205 嗯嗯
    yxisenx
        31
    yxisenx  
       Apr 25, 2023
    不惯着他
    gy123
        32
    gy123  
    OP
       Apr 25, 2023
    @yxisenx 就冲这个
    lower
        33
    lower  
       Apr 25, 2023
    虽然我也倾向 /支持仅用 80 和 443 端口,但是你这个争论本身的问题是:后台服务和端口都是后端决定和负责,前端只要调用就好了,调用不通或者接口出问题,后端背锅负责就行……
    不用争论哪个对哪个错,是后端的范畴,出问题后端保证负责就行,关他前端屁事
    gy123
        34
    gy123  
    OP
       Apr 25, 2023
    @lower 是啊,新项目我也的确用了并且倾向 80 和 443~你说得对,后端接口问题我负责
    gy123
        35
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @koloonps 其实关于防火墙限制的说法,一般内网或者不让访问娱乐网站等禁用端口域名啥的,为什么不禁用常用的 80 443 ,反而禁用别的?当然只提供 22 这种只能用来远程办公的可以理解。
    fivesmallq
        36
    fivesmallq  
       Apr 25, 2023
    8081 也可以用 https 呀
    xiangyuecn
        37
    xiangyuecn  
       Apr 25, 2023
    http 1-65535 端口随便用
    lower
        38
    lower  
       Apr 25, 2023
    @gy123 工作上没必要那么较真;职权 /职责范围划清就行,在自己范围内做好就行。
    keppelfei
        39
    keppelfei  
       Apr 25, 2023
    开 8081 就像用汉字命名变量名一样,不是不可以,只是让人感到不舒服。
    statement
        40
    statement  
       Apr 25, 2023 via iPhone
    我的 nas 就设置非 80 和 443 不走代理。pt 连进来非标准端口太多
    gy123
        41
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @fivesmallq 没人说不能啊
    gy123
        42
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @keppelfei 是的,前提是老项目,遗留问题
    gy123
        43
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @keppelfei 我想除了提供给浏览器使用的域名外,隐藏在应用中的非默认端口,应该很多吧,只是看不到
    gy123
        44
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @statement 你这个比较特殊吧,你不会把路由器也设置成这样吧
    documentzhangx66
        45
    documentzhangx66  
       Apr 25, 2023
    理论上没有任何问题,但就怕楼上说的,有些农村小学毕业的网管,没见过世面,喜欢乱封端口。
    gy123
        46
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @documentzhangx66 我觉得还是结合实际吧,第一就是老项目稳定运行几年了没必要动,第二就是还没遇到过上面说的防火墙限制访问
    cloudzhou
        47
    cloudzhou  
       Apr 25, 2023
    这个看改动成本,如果非常小,我站前端

    1. 标准化,无沟通成本
    2. 有人说了,部分端口限制
    IvanLi127
        48
    IvanLi127  
       Apr 25, 2023 via Android
    有没有问题是相对的。

    如果非标端口和客诉有关,并且你们公司愿意内部解决,那这就是有问题。这种撕逼问题遇到再说吧。

    另外。。。运维死哪去了,这不是前端和运维的事么
    cloudzhou
        49
    cloudzhou  
       Apr 25, 2023
    然后端口和加密,http/http2 有啥关系,感觉你没理明白,毫无关系
    gy123
        50
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @cloudzhou 首先前端是以甩锅自己代码问题为由的,第二说小并不小每个端口部署了相同代码,如果统一需要三端走同一个服务,他那端又有将来可能的宕机风险,第三所谓端口限制,完全是个人行为,并且我还是闹不明白路由器或交换机在不限制 80 443 的基础上为什么限制别的,应该以实际出发吧,不让看娱乐的东西?
    gy123
        51
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @IvanLi127 技术团队小,我是后端,默认承接了运维工作,新项目也是我负责走标准,我只是不想动没问题的老项目
    gy123
        52
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @cloudzhou 是的,可能说的不要紧 443 只是 https 默认端口,h2 的基础是 https
    gy123
        53
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @gy123 说的不要紧,这块知识还是懂得
    gy123
        54
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @gy123 是不严谨。。。
    gy123
        55
    gy123  
    OP
       Apr 25, 2023 via iPhone
    对了,还有一个就是,有其他服务调用,如果改的话下游服务也改,就是改动成本还是有的
    hyq
        56
    hyq  
       Apr 25, 2023
    koloonps
        57
    koloonps  
       Apr 25, 2023
    @gy123 用不到的端口就是要全部关的
    gy123
        58
    gy123  
    OP
       Apr 25, 2023
    @hyq 这个属于特殊的端口号:2049 端口说明:nfs 服务
    gy123
        59
    gy123  
    OP
       Apr 25, 2023
    @koloonps 嗯,老项目就这样吧,先保持了
    gy123
        60
    gy123  
    OP
       Apr 25, 2023 via iPhone
    还有就是,谁规定 80 和 443 是暴露接口服务的标准端口了。。。只是协议的默认端口号,真的禁用非默认端口,我还是觉得是极少数
    bclerdx
        61
    bclerdx  
       Apr 25, 2023 via Android
    @koloonps 那么何为用不到的断口?
    koloonps
        62
    koloonps  
       Apr 25, 2023
    @bclerdx 我们之前的客户就只开放了 80 和 443,业务上如果有需要提申请.会给你所在的办公室开放端口.他们有一个白名单,不在白名单的网站全部不允许访问(需要的也是提申请)
    Shazoo
        63
    Shazoo  
       Apr 25, 2023
    > 其实关于防火墙限制的说法,一般内网或者不让访问娱乐网站等禁用端口域名啥的,为什么不禁用常用的 80 443 ,反而禁用别的?

    这在外企很常见的。限制出流量目标端口,达到只允许浏览网页的功能。不少行为分析器的“一键设置”就是这么实现的。
    8080 、8081 这种远古时代约定俗成的 http 代理端口,被封禁并不是什么新鲜事。

    实际上,就事论事来看,显然标准端口更优,OP 没必要纠结这个的。感觉你是看不惯前端这个人,在抬杠。

    顺便再多说一嘴,“(1)使用非 https 会相对的不安全,但是我们 app 也不需要这个相对安全 ” 这话其实不妥哦。使用 https 的安全其实是网络传输安全,你们的 app 是需要这个安全的……举例:某些电信注入的广告。你不希望看到前端的 json 数据后面有个一刀 999 元宝的 js 吧~~~

    再再多一嘴,其实改动也是 app 那边改动,和你关系不大。改了看他们连夜热更新去呗~~嘿嘿
    gy123
        64
    gy123  
    OP
       Apr 25, 2023 via iPhone
    @Shazoo 谢谢,说的也是有道理的,后续看看再说吧
    bclerdx
        65
    bclerdx  
       Apr 25, 2023 via Android
    @koloonps 目的是为了内网的安全吗?
    gy123
        66
    gy123  
    OP
       Apr 25, 2023
    @Shazoo 看不惯前端,这个的确,看不惯甩锅的态度~其实倒不是我不想改动,也说了是老项目,只有他那有端有莫名其妙问题,现在端口分开访问并且是访问到不同的端口的相同后端服务,之前宕机过,相同代码只有他那端宕机~所以你懂的,也不是没有改造成本,我也是需要改动的~
    Shazoo
        67
    Shazoo  
       Apr 25, 2023   ❤️ 4
    @gy123 瞅了一眼 append……伙计,职场上并不是这么处理问题的。实际上,你不改动等于把风险和锅往自己背上拉。

    1. 使用标准端口其实在技术选择上是正确的,某种意义是政治正确。
    2. 你坚持不改的理由其实本贴不少人也提醒了:不成立,有小概率意外。

    优解是:给他改了,然后看是不是还这德行。
    1. 还是宕机:从罗马到契丹,都知道此货是 sb
    2. 不宕机:追问原因,解释不出来此货仍是 sb


    不改:吃瓜观众仍用狐疑的目光瞅着大兄弟你啊……
    gy123
        68
    gy123  
    OP
       Apr 25, 2023
    @Shazoo 谢谢,我考虑一下,感觉朋友不是普通人啊
    gy123
        69
    gy123  
    OP
       Apr 25, 2023
    @Shazoo 其实宕机我已经解决了,已经一年多没宕机了~倒是我上午还言辞犀利的说不用改,现在又改,让人怀疑~反正老项目不是我弄得,目前也没问题,真正出现楼上所说的有用户端口被禁用再说吧~哎,此人乃领导之前抓来的老员工,你懂的~
    gy123
        70
    gy123  
    OP
       Apr 25, 2023
    @Shazoo 大兄弟,我按你说的做了,负载均衡上了个 443 的给他了,按你说的成功甩锅
    Shazoo
        71
    Shazoo  
       Apr 25, 2023
    @gy123 摊手~~所以下次不要把话说绝。

    优解是当场表示要评估评估。然后过 20 分钟发个邮件 cc 老大,表示虽然老子觉得他说的是无稽之谈,但是考虑到这也是玄学解决方案,老子决定花个 xx 天搞了这事,希望 sb 他说的这个事情能真正解决,如果解决也希望 sb 他可以出篇技术 paper share 下。

    老大眼里,xx 就是成本,casued by him 的。

    少年,请跟着油腻 80 后们学习一个技术吧:高情商读作文案合规艺术;低情商叫官僚主义甩锅。



    我个人最喜欢梗着脖子自己拉锅的伙计了……
    gy123
        72
    gy123  
    OP
       Apr 25, 2023
    @Shazoo 厉害厉害~学习一下
    zero47
        73
    zero47  
       Apr 25, 2023
    @koloonps 我怀疑你说的不是防火墙,是不可名状的墙
    cosmain
        74
    cosmain  
       Apr 25, 2023
    OP 只是想让大家一起帮着他骂同事 SB 而已。
    Eytoyes
        75
    Eytoyes  
       Apr 25, 2023
    确实如#67 说的啊,改的时候最好在群里 @一下他,让大家都知道这件事哦
    gy123
        76
    gy123  
    OP
       Apr 25, 2023
    @cosmain 哈哈哈
    gy123
        77
    gy123  
    OP
       Apr 25, 2023
    @Eytoyes 已经知道了,因为大家就在一个小屋,小团队嘛~这个同事 sb 惯了,领导也没办法,还是主管从原公司带来的
    f165af34d4830eeb
        78
    f165af34d4830eeb  
       Apr 25, 2023
    iOS 的 app 如果用纯 http 要处理 ATS 适配的问题,还可能因为没有使用 https 在审核的时候被拒绝。

    不过 op 做的应该也不是 iOS app ,要不然这个问题早该遇到了。
    gy123
        79
    gy123  
    OP
       Apr 25, 2023
    @f165af34d4830eeb 的确有 ios,用的 8080,可能我没来之前做过什么修改吧~
    gy123
        80
    gy123  
    OP
       Apr 25, 2023
    @f165af34d4830eeb 查了下可以增加配置支持 http 的,并且几年了提交了无数版本,没碰到过审核不过问题
    otakustay
        81
    otakustay  
       Apr 25, 2023
    我认为放在 2023 年,“不需要 HTTPS 安全”这个在任何情况下都是不成立的,乖乖的 HTTPS by default
    WindProtect
        82
    WindProtect  
       Apr 25, 2023
    真的能 80/443 就 80/443 ,你保不齐遇到什么网络会做管控限制别的端口。之前测试环境给一外国客户试用就还得请他们 IT 开又开域名又开端口白名单折腾了好几次才行。
    passall
        83
    passall  
       Apr 25, 2023
    我公司就只开放标准的端口,8080 也访问不了。
    passall
        84
    passall  
       Apr 25, 2023
    @WindProtect
    可能说的就是我公司。
    dayeye2006199
        85
    dayeye2006199  
       Apr 26, 2023
    问题不大,前面搞个反代都解决,再加上 https ,老系统升级成现代系统
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5619 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 121ms · UTC 03:36 · PVG 11:36 · LAX 20:36 · JFK 23:36
    ♥ Do have faith in what you're doing.