Siema,
zdeployowałem front w next js na vercelu na domena.pl. Strapi jako cms wrzuciłem na nginx początkowo na innej domenie i jako subdomena admin.zxy.pl, żeby sprawdzić czy będzie wszystko działać, bo czułem, że mogą być kłopoty jakbym od razu wrzucił to na tę samą domenę co front. Działało.

Teraz do frontu z vercelem na domena.pl chcę skierować z nginx cms na domena.pl/admin. Front działa, ale jak wejdę na domena.pl/admin to zależnie od ustawień na vps dostaję 500 lub 404 jeśli dawałem domena.pl/admin w *.conf.

Da się w ogóle to tak zrobić, że w katalogu jest cms z innego serwera niż vercel i next.js, który normalnie spodziewałby się pod domena.pl/admin czegoś z folderu /pages?

Poniżej moje ustawienia. location brałem z docsów strapi: https://docs.strapi.io/developer-docs/latest/setup-deployment-guides/deployment/optional-software/nginx-proxy.html

// config/server.js (cms)

module.exports = ({ env }) => ({
  host: env("HOST", "0.0.0.0"),
  port: env.int("PORT", 1337),
  app: {
    keys: env.array("APP_KEYS"),
  },
  url: "https://domena.pl",
});
# path: /etc/nginx/sites-available/domena_cms.conf

server {
        listen 80;
        server_name domena.pl www.domena.pl;

        root /var/www/domena_cms;
        index index.html index.htm index.nginx-debian.html;

        # Static Root

         location / {
                 root /var/www/domena_cms;
         }


        location /admin/ {
                rewrite ^/admin/?(.*)$ /$1 break;
                proxy_pass http://strapi;
                proxy_http_version 1.1;
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header Host $http_host;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "Upgrade";
                proxy_pass_request_headers on;

               # try_files $uri $uri/ =404;
        }
}



# path: /etc/nginx/sites-enabled/domena_cms.conf

server {

        root /var/www/domena_cms;
        index index.html;

        server_name domena.pl;

        location / {
                root /var/www/html;
        }

        location /admin/ {
                rewrite ^/admin/?(.*)$ /$1 break;
                proxy_pass http://localhost:1337;
                proxy_http_version 1.1;
                proxy_set_header X-Forwarded-Host $host;
                proxy_set_header X-Forwarded-Server $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header Host $http_host;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "Upgrade";
                proxy_pass_request_headers on;
        }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/domena.pl/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/domena.pl/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}


server {
        server_name domena.pl/ www.domena.pl/;

    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/domena.pl/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/domena.pl/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
    if ($host = domena.pl) {
        return 301 https://$host$request_uri;
    } # managed by Certbot



        server_name domena.pl;
    listen 80;
    return 404; # managed by Certbot


}


server {
    if ($host = www.domena.pl) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

        listen 80;
        listen [::]:80;

        server_name domena.pl www.domena.pl;