V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gy123
V2EX  ›  问与答

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

  •  
  •   gy123 · 338 天前 · 4864 次点击
    这是一个创建于 338 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

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

    第 1 条附言  ·  338 天前

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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



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

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