You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Vercel uses A records for apex domains, while Appwrite uses nameserver (NS) records. This means you'll need to delegate DNS management to Appwrite.
89
89
@@ -118,7 +118,7 @@ Changing nameservers delegates your entire domain's DNS management to Appwrite.
118
118
{% /info %}
119
119
{% /section %}
120
120
121
-
## Migrating a subdomain
121
+
# Migrating a subdomain
122
122
123
123
For subdomains, both Vercel and Appwrite use CNAME records, making the migration process simpler.
124
124
@@ -138,7 +138,7 @@ At your domain registrar or DNS provider:
138
138
3. Wait for DNS propagation and verification
139
139
{% /section %}
140
140
141
-
## Understanding domain rule types
141
+
# Understanding domain rule types
142
142
143
143
When adding a domain in Appwrite, you can choose from three rule types:
144
144
@@ -170,7 +170,7 @@ When adding a domain in Appwrite, you can choose from three rule types:
170
170
When using domain-level redirects in Appwrite, path and query parameters are ignored. For example, if you redirect `example.com` to `appwrite.io`, then `example.com/docs?id=123` will redirect to `appwrite.io` (not `appwrite.io/docs?id=123`).
171
171
{% /info %}
172
172
173
-
## Configure build settings
173
+
# Configure build settings
174
174
175
175
After setting up your project and domain, you'll need to configure your build settings to match your Vercel configuration.
176
176
@@ -192,7 +192,7 @@ Navigate to your site > **Settings** > **Build settings** and configure the foll
192
192
{% /only_light %}
193
193
{% /section %}
194
194
195
-
## Framework defaults
195
+
# Framework defaults
196
196
197
197
Appwrite automatically detects and applies default settings for popular frameworks:
198
198
@@ -238,7 +238,7 @@ Appwrite automatically detects and applies default settings for popular framewor
238
238
- `./dist`
239
239
{% /table %}
240
240
241
-
## Manage environment variables
241
+
# Manage environment variables
242
242
243
243
Environment variables require special attention during migration, as they control how your application behaves in different environments.
244
244
@@ -268,7 +268,7 @@ Vercel automatically provides system variables like `VERCEL_URL`. You'll need to
268
268
{% /only_light %}
269
269
{% /section %}
270
270
271
-
## Appwrite system variables
271
+
# Appwrite system variables
272
272
273
273
Appwrite automatically injects these variables into your site:
274
274
@@ -302,7 +302,7 @@ Appwrite automatically injects these variables into your site:
302
302
- Build & Runtime
303
303
{% /table %}
304
304
305
-
## Handle redirects and rewrites
305
+
# Handle redirects and rewrites
306
306
307
307
One key difference between Vercel and Appwrite is how they handle redirects and rewrites.
308
308
@@ -324,7 +324,7 @@ Domain redirects in Appwrite do not preserve path or query parameters. For examp
For path-based redirects, use your framework's built-in functionality:
326
326
327
-
## Next.js
327
+
# Next.js
328
328
```javascript
329
329
// next.config.js
330
330
module.exports = {
@@ -340,7 +340,7 @@ module.exports = {
340
340
};
341
341
```
342
342
343
-
## SvelteKit
343
+
# SvelteKit
344
344
```javascript
345
345
// src/routes/+layout.server.js
346
346
export function load({ url }) {
@@ -353,7 +353,7 @@ export function load({ url }) {
353
353
}
354
354
```
355
355
356
-
## Nuxt
356
+
# Nuxt
357
357
```javascript
358
358
// nuxt.config.js
359
359
export default {
@@ -372,12 +372,12 @@ export default {
372
372
```
373
373
{% /section %}
374
374
375
-
## Configure custom headers
375
+
# Configure custom headers
376
376
377
377
Vercel allows setting custom headers at the platform level through `vercel.json`. Appwrite Sites supports custom headers through your framework's built-in configuration mechanisms.
For static sites without framework support, consider using client-side solutions or framework-specific configuration files if your static site generator supports them.
415
415
{% /section %}
416
416
417
-
## Migrate serverless functions
417
+
# Migrate serverless functions
418
418
419
419
There are two approaches to serverless functions when migrating from Vercel to Appwrite:
420
420
@@ -451,7 +451,7 @@ For standalone serverless functions or more complex use cases:
When using framework API routes within Appwrite Sites (with SSR enabled), your endpoints remain the same:
456
456
457
457
- Vercel: `/api/hello`
@@ -466,7 +466,7 @@ export default function handler(req, res) {
466
466
}
467
467
```
468
468
469
-
## Standalone Appwrite Functions
469
+
# Standalone Appwrite Functions
470
470
If you're using standalone Appwrite Functions (outside your site's codebase), you'll need to update your frontend code to use the Appwrite Functions API:
While Vercel offers platform-level Edge Middleware configured through `vercel.json`, Appwrite Sites fully supports framework-native middleware when using SSR. This means your existing middleware code will continue to work without modification.
@@ -529,7 +529,7 @@ After completing your migration from Vercel to Appwrite Sites, we recommend:
529
529
3. **Set up CI/CD** - Configure automatic deployments from your repository
530
530
4. **Explore Appwrite services** - Consider integrating with other Appwrite services like Authentication, Databases, and Storage
531
531
532
-
## Timeouts
532
+
# Timeouts
533
533
534
534
Vercel has a default build timeout of 45 minutes. Appwrite Sites has a default request timeout of 15 seconds (max 30 seconds) for runtime requests, which is configurable.
0 commit comments