Strapi admin panel not routing correctly with Nginx Ingress

@Pco @javierguzman

We fixed it by switching to Caddy over Nginx.

 {
      "admin": {
        "config": {},
        "listen": "0.0.0.0:2019"
      },
      "apps": {
        "http": {
          "servers": {
            "server": {
              "@id": "server",
              "automatic_https": {
                "disable": true
              },
              "listen": [
                ":443"
              ],
              "routes": [
                {
                  "handle": [
                    {
                      "handler": "subroute",
                      "routes": [
                        {
                          "handle": [
                            {
                              "handler": "subroute",
                              "routes": [
                                {
                                  "handle": [
                                    {
                                      "handler": "rewrite",
                                      "strip_path_prefix": "/api"
                                    }
                                  ]
                                },
                                {
                                  "handle": [
                                    {
                                      "handler": "reverse_proxy",
                                      "upstreams": [
                                        {
                                          "dial": "strapi-service.namespace.svc.cluster.local:80"
                                        }
                                      ]
                                    }
                                  ]
                                }
                              ]
                            }
                          ],
                          "match": [
                            {
                              "path": [
                                "/api*"
                              ]
                            }
                          ]
                        },
                        {
                          "handle": [
                            {
                              "handler": "reverse_proxy",
                              "upstreams": [
                                {
                                  "dial": "nuxt-service.namespace.svc.cluster.local:80"
                                }
                              ]
                            }
                          ]
                        }
                      ]
                    }
                  ],
                  "match": [
                    {
                      "host": [
                        "domain.com"
                      ]
                    }
                  ]
                }
              ],
              "tls_connection_policies": [
                {
                  "certificate_selection": {
                    "any_tag": [
                      "ssl-tag"
                    ]
                  },
                  "match": {
                    "sni": [
                      "domain.com"
                    ]
                  }
                }
              ]
            }
          }
        },
        "tls": {
          "certificates": {
            "@id": "certs",
            "load_files": [
              {
                "certificate": "/secret/tls/domain-com/tls.crt",
                "key": "/secret/tls/domain-com/tls.key",
                "tags": [
                  "ssl-tag"
                ]
              }
            ]
          }
        }
      }
    }

Caddy config looks something like above. We have Strapi on /api and nuxt on /. You need to make sure you update the admin panel url to have the /api. FYI this is only tested on v3 as we are moving to Payload instead of migrating to v4. I hope this helped. @Pco sorry for long response didn’t see your first @