当前位置: 首页 > news >正文

php网站开发需要多久网站建设与程序编辑

php网站开发需要多久,网站建设与程序编辑,wordpress大不了,重庆seo推广外包项目背景:迁移前后端应用,prod环境要求保留443端口,开发环境37800端口,后端容器端口为8000,前端为80,fastAPI对外端口为41000 生产环境部署在VM01,开发环境部署在VM03,在VM01配置nginx转发 [r…

项目背景:迁移前后端应用,prod环境要求保留443端口,开发环境37800端口,后端容器端口为8000,前端为80,fastAPI对外端口为41000

生产环境部署在VM01,开发环境部署在VM03,在VM01配置nginx转发

[root@vm01 conf.d]# docker ps | grep mig
73fbafgc2811   mig_backend-buildnum3                                           "python ./main.py"       5 days ago      Up 5 days              0.0.0.0:40000->8000/tcp         mig_backend
07db12b64b75   mig_frontend-buildnum3                                        "/docker-entrypoint.…"   5 days ago      Up 5 days              0.0.0.0:40001->80/tcp           mig_frontend
[root@wx8vm00007 conf.d]# ping 192.168.119.120
PING 192.168.119.120 (192.168.119.120) 56(84) bytes of data.
64 bytes from 192.168.119.120: icmp_seq=1 ttl=64 time=0.304 ms
64 bytes from 192.168.119.120: icmp_seq=2 ttl=64 time=0.277 ms
^C
--- 192.168.119.120 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1006ms
rtt min/avg/max/mdev = 0.277/0.290/0.304/0.021 ms
[root@vm01 conf.d]# ss -tunlp | grep 37800
tcp   LISTEN 0      511          0.0.0.0:37800      0.0.0.0:*    users:(("nginx",pid=1340282,fd=6),("nginx",pid=1340281,fd=6),("nginx",pid=1340280,fd=6),("nginx",pid=1340279,fd=6),("nginx",pid=1340230,fd=6))
问题:vm01与vm03网络互通,nginx监听37800端口,sso配置正确,访问前端页面登录超时

以下是排查步骤:

1. 检查后端服务是否监听正确接口

  • 确认后端服务(运行在Docker容器中的Python应用)是否绑定到 0.0.0.0:8000,而非 127.0.0.1:8000

  • 验证方法:进入容器执行 docker logs <容器id>,查看8000端口是否监听在 0.0.0.0

  • 修复:如果应用绑定到 127.0.0.1,修改其配置以监听 0.0.0.0

  • [root@vm01 ~]# docker logs 492
    开始加载 service.db
    DATABASE_URL='mysql+pymysql://此处手动打🐎charset=utf8mb4'
    SessionLocal 定义完成
    INFO:     Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
    INFO:     Started parent process [1]
    SessionLocal 定义完成
    SessionLocal 定义完成
    SessionLocal 定义完成
    SessionLocal 定义完成
    INFO:     Started server process [8]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    INFO:     Started server process [12]
    INFO:     Waiting for application startup.
    INFO:     Started server process [15]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    INFO:     Started server process [9]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    INFO:     Started server process [14]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    INFO:     Application startup complete.
    INFO:     Started server process [11]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    INFO:     Started server process [10]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    INFO:     Started server process [13]
    INFO:     Waiting for application startup.
    INFO:     Application startup complete.
    

    可见容器内部已正常启动,故排除容器内部问题。

2. 确认Docker端口映射正确

  • 确保宿主机的40000端口已正确映射到容器的8000端口。

  • 验证方法:在宿主机运行:

    ss -tuln | grep 40000
    

    应看到 0.0.0.0:40000 的监听状态。

  • 修复:如果未监听,重启容器并确保使用 -p 40000:8000 参数。

    [root@vm01 ~]# ss -tuln | grep 40000
    tcp   LISTEN 0      2048         0.0.0.0:40000      0.0.0.0:*
    
  • 可见端口映射正常,故排除Docker端口映射问题。

3. 测试后端端口连通性

  • 从Nginx服务器直接测试与后端40000端口的连通性:

    telnet 192.168.119.120 40000  # 或使用 nc -zv 192.168.119.120 40000
    
  • 结果分析

    [root@vm01 ~]# telnet 192.168.119.120 40000
    Trying 192.168.119.120...
    Connected to 192.168.119.120.
    Escape character is '^]'.
    

    可见连接成功,到这里我排查的思路为:

    • if(连接成功) {Nginx配置或应用路径问题}

    • else {防火墙/Docker/服务未启动}

      但还是看了看防火墙

4. 检查防火墙规则

  • 在宿主机(192.168.119.120)检查防火墙是否允许40000和40001端口:

    firewall-cmd --list-ports  # 若使用firewalld
    iptables -L -n -v         # 检查iptables规则
    
  • 修复:开放端口:

    firewall-cmd --add-port=40000/tcp --permanent
    firewall-cmd --reload
    

此处VM01和03为1-65535全开放,故排除防火墙问题

5. 检查Nginx代理配置

  • 路径问题:确保proxy_pass末尾的斜杠正确。例如:

    location /rqone {proxy_pass http://192.168.119.122:40000;  # 无斜杠,保留原始URI路径
    }
    
  • 日志调试:检查Nginx错误日志:

    tail -f /var/log/nginx/error.log
    

    观察是否有 connect() failed (111: Connection refused) 或超时错误。

6. 验证HTTPS证书和域名

  • 使用curl绕过证书验证测试:

    curl -vk https://<your domain>:port/接口
    
  • 检查证书是否有效且域名匹配:

    openssl s_client -connect <your domain>:port -servername <your domain>
    

7. 简化测试(临时关闭SSL)

  • 修改Nginx配置,暂时禁用SSL,改用HTTP监听:

    listen 37800;  # 移除ssl
    # ssl_certificate... 注释掉SSL相关行
    
  • 重启Nginx后通过HTTP访问,确认是否是SSL问题。

8. 检查SELinux/AppArmor

  • 临时禁用SELinux:

    setenforce 0
    
  • 如果问题解决,调整策略:

    semanage port -a -t http_port_t -p tcp 37800
    

上述步骤均确认无误,随后和前端开发人员会议沟通确认,发现有跨域报错,原来如此

检查发现是前端配错了回调地址😀

http://www.dtcms.com/a/441636.html

相关文章:

  • 推广做网站联系方式网站维护后期费用
  • 为什么不能自己做网站长沙住房建设部网站
  • 查询注册过哪些网站做网站备案须知
  • 安徽湖滨建设集团有限公司网站做网站素材图片
  • 推广网站排名全国各地感染高峰进度
  • wordpress站内短信app开发制作
  • 盘锦网站制作公司旅游网站开发的背景和意义
  • 营销型网站改版国外优秀个人网页设计欣赏
  • 安顺建设工程造价管理网站校园网站制作方法
  • 贵阳网站上门备案业务国家开发银行助学贷款网站
  • seo网站排名的软件淄博网站制作建设
  • 河南联通 网站备案网站建设的ppt模板
  • 网龙网络公司校园招聘wordpress joomla seo
  • 服务网点网站建设软件开发app制作公司有哪些
  • 网站抓取QQ获取系统百度浏览器网站入口
  • 网站建设及规划wordpress后台自定义页面
  • 常用网站建设技术是什么厦门正规网站建设多少
  • 临沂网站建设中企动力网站系统维护一般多久
  • 郴州网站推广公司排名南宁博信网络技术有限公司
  • 怎么做下载网站网站开发包含的项目和分工
  • 网站宽度 1000px做外贸主要是哪些网站
  • 微信订阅号做微网站吗个人网站的版权怎么写
  • 重庆平台网站建设哪里有市场营销和网络营销
  • 烟台网站建设便宜臻动传媒微信备份wordpress
  • 网站备案完成建设部网站从哪登陆
  • 模板建站与仿站哪个更好安徽seo优化规则
  • 珠海华兴建设工程有限公司网站企业融资需求怎么写
  • 做一个简单的公司网站要多少钱it外包前景
  • 厦门网站建设网络推广建湖网站建设找哪家好
  • 哈尔滨网站建设价格低wordpress icp涵数