All Systems Operational
Powered By
profound-logo
profound-logoProfound CMS
⌘K
Admin

Konfiguracja Proxy Panelu Administracyjnego

konfiguracja proxy panelu administracyjnego

Continue Reading
Previous‹SseNextRenderowanie statyczne z obsługą trybu edycji›

Hybryda

Projekt rendereraParametryczne RoutowanieTypy komponentówSseKonfiguracja Proxy Panelu AdministracyjnegoRenderowanie statyczne z obsługą trybu edycjiSkryptowanie W Kreatorze SzablonówCreate Profound Next

Bezgłowy

Szybki startJson I Kod ClaudeKomponent Zod Pobieranie

Mcp

Mcp

Funkcje Cms

Funkcja Szablon DokumentacjiFunkcja Kreator SzablonówFeat TłumaczFunkcja Organizacja

Motywacja

Nasze podejście

Terminologia

Hybrydowe Vs Headless

Dołączenie panelu administracyjnego do Twojej strony internetowej to prosty krok


Dlaczego jest to wymagane

Zapewnia to płynne środowisko edycji. Dzięki panelowi administracyjnemu dołączonemu do Twojej witryny za pośrednictwem proxy możesz edytować swoją stronę pod tym samym adresem URL i mieć podgląd zmian w czasie rzeczywistym. Umożliwia to również edycję z nakładką, co zapewnia lepsze wrażenia podczas edycji strony.


Wymagane kroki

Konfiguracja proxy (istnieje kilka zastrzeżeń)

Konfiguracja proxy to po prostu plik proxy.ts w Twoim projekcie, który zachowuje się jak przepisywanie adresu URL, aby umożliwić rozwiązanie końcówki /admin Twojej witryny do CMS.

  • Dla localhost: musisz użyć tunelu (ponieważ CMS nie ma bezpośredniego dostępu do localhost)
  • Działa bezproblemowo na wdrożonych stronach internetowych

Konfiguracja proxy

// proxy.ts
import { createCmsProxy } from 'cms-renderer/lib/proxy';

export const proxy = createCmsProxy({
  upstream: "https://cms.dev.tryprofound.com", // panel administracyjny CMS
});

export const config = {
  matcher: [
    '/admin',
    '/admin/:path*',
    '/api/:path*',
    '/auth/:path*',
    '/_next/:path*',
    '/((?:.*\\.(?:css|js|map|png|jpg|jpeg|gif|svg|ico|webp|avif|woff|woff2|ttf|eot|txt|xml))$)',
  ],
};

Teraz możesz przejść do /admin, aby uzyskać dostęp do panelu administracyjnego ze swojej strony. Umożliwia to podgląd na żywo.


Rozwiązywanie parametrów wyszukiwania renderera

Nakładki są obsługiwane automatycznie. Musisz tylko przekazać searchParams do swojego renderera.

// page.tsx
interface PageProps {
  params: Promise<{ slug: string[] }>;
  searchParams: Promise<{ [key: string]: string | string[] | undefined }>;
}



Jak zweryfikować

  1. Przejdź do /admin na swojej stronie internetowej
  2. Powinno poprosić Cię o zalogowanie i natychmiast otworzyć panel administracyjny CMS

Nakładki i podglądy na żywo powinny działać automatycznie.


export
default
async
function
Page
({
params
,
searchParams
}
:
PageProps
) {
const { slug } = await params;
return (
<ParametricRoutePage
registry={registry}
apiKey="sk_..."
websiteId="a2717ba3-29db-..."
cmsUrl={"https://cms.dev.tryprofound.com"}
params={Promise.resolve({ slug })}
searchParams={searchParams}
/>
);
}