분석은 방문자가 웹사이트와 상호 작용하는 방식에 대한 데이터를 수집하고 분석하는 프로세스입니다. 이 정보를 통해 웹사이트 개선을 위한 현명한 결정을 내릴 수 있으므로 매우 중요합니다.
Google Analytics는 훌륭한 선택이지만 데이터 개인정보 보호와 GDPR 준수 문제가 있을 수 있습니다.
분석 도구를 선택할 때 다음 사항이 중요합니다.
Umami Analytics는 이 모든 항목을 확인합니다.
Umami Analytics는 사용자 개인정보를 침해하지 않으면서 웹사이트 사용을 추적할 수 있는 간단하고 빠르며 개인정보 보호에 중점을 둔 도구입니다. Google Analytics에 대한 오픈 소스 대안입니다. 큰 장점은 Umami 분석이 GDPR(일반 데이터 보호 규정)을 준수한다는 것입니다.
UMAMI 분석을 사용하는 두 가지 옵션이 있습니다
이 기사에서는 자체 호스팅 옵션을 살펴보겠습니다. 데이터베이스(postgres)에는 Supabase(무료 계층 계획)를 사용하고 Umami 호스팅에는 Vercel(무료 계층/취미 계획)을 사용할 예정입니다.
Vercel + Supabase를 사용하여 Umami 분석을 무료로 자체 호스팅하는 방법을 살펴보겠습니다
db/postgresql/schema.prisma 파일 편집(directUrl 추가)
datasource db { provider = "postgresql" url = env("DATABASE_URL") directUrl = env("DIRECT_DATABASE_URL") //add this line relationMode = "prisma" }
DATABASE_URL = postgres://[user]:[password]@aws-0-[aws-region].pooler.supabase.com:6543/postgres?**pgbouncer=true&connection_limit=1** DIRECT_DATABASE_URL = postgres://[user]:[password]@aws-0-[aws-region].pooler.supabase.com:**5432**/postgres
? DATABASE_URL은 supabase에서 복사한 연결 URL(2단계)과 동일하지만 Url 끝에 ?pgbouncer=true&connect_timeout=1
을 추가해야 합니다.? DATABASE_URL은 supabase에서 복사한 연결 URL(2단계)과 동일하지만 포트를 6543에서 5432로 바꿔야 합니다
이제 다음 명령을 실행하세요(종속성을 설치하고 DB 연결을 설정하려면)
yarn install yarn build-db
그런 다음 아래 단계에 따라 기본 마이그레이션을 생성합니다
prisma/migrations 폴더가 있는 경우 이 폴더를 삭제, 이동, 이름 변경 또는 보관하세요.
Run the following command to create a migrations directory inside with your preferred name. This example will use 01_init for the migration name:
mkdir -p prisma/migrations/01_init
Generate a migration and save it to a file using prisma migrate diff
npx prisma migrate diff \ --from-empty \ --to-schema-datamodel prisma/schema.prisma \ --script > prisma/migrations/01_init/migration.sql
Run the prisma migrate resolve command for each migration that should be ignored:
npx prisma migrate resolve --applied 01_init
This command adds the target migration to the _prisma_migrations table and marks it as applied. When you run prisma migrate deploy to apply new migrations, Prisma Migrate:
username : admin password : umami
Name : provide any name of your choice Domain : your [website](https://www.invoizly.com) domain (eg. invoizly.com)
In Next.JS projects to load a third-party script for multiple routes, import next/script and include the script directly in your layout component:
import Script from 'next/script' export default function Layout({ children, }: { children: React.ReactNode }) { return ( <html lang="en" className="dark"> <body className={cn(`${inter.className} antialiased`)}> <Navbar /> {children} <Footer /> </body> <Script defer src="https://[your-analytics-app].vercel.app/script.js" data-website-id="xxxx-xxx-xxxx-xxxx-xxxxx" /> </> ) }
After adding the Sript in your root layout, deploy your app and visit your web page. you will be able to track the visits on your analytics dashboard page.
Hope with help of this article you will be able to set up analytics for your application quickly and easily, without relying on third-party services. Since Vercel and Supabase both provides generous free tier, you can run your analytics for free in the initial days while being GDPR compliant.
Invoizly is all about making invoicing easy and free. With Invoizly, you can quickly create high-quality, customizable invoices that look professional. It’s designed to be super user-friendly, so you can focus on your business instead of getting bogged down in paperwork.
Cover image by Marissa Grootes on Unsplash
위 내용은 셀프 호스팅 Umami Analytics: Vercel 및 Supabase를 무료로 배포하기 위한 완벽한 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!