Skip to content

progfay/nextjs-ssg-rewrite-rule-gen

Folders and files

NameName
Last commit message
Last commit date
Jan 12, 2024
Jan 11, 2025
Jan 11, 2025
Jan 12, 2024
Jan 12, 2024
Jan 11, 2025
Jan 11, 2025
Jan 12, 2024
Apr 24, 2025
Apr 24, 2025
Jan 11, 2025
Jan 12, 2024

Repository files navigation

@progfay/nextjs-ssg-rewrite-rule-gen

Description

Next.js supports Static Exports.

However, it's a lot of work to manage the routing for the generated file without Vercel. Dynamic Routes feature makes routing more difficult.

This application automatically generates nginx rewrite rules for generated files.

Requirements

Installation

npm install -D @progfay/nextjs-ssg-rewrite-rule-gen

Configuration

Note

This application is available with zero configuration.

You can run this application with config in following command: nextjs-ssg-rewrite-rule-gen --config config.json

{
  "pagesDirPath": "apps/src/pages",
  "ignoreRoutes": ["/debug"],
  "nginxConfigs": [
    {
      "pattern": "^/credential$",
      "directives": ["add_header Cache-Control \"no-store\";"]
    }
  ],
  "basePath": "/app",
  "trailingSlash": true
}

Available configs:

How to work

pages directory:

pages
└── user
    ├── [id]
        └── index.js
    └── new
        └── index.js

Generated files with Static Exports (next build and output: "export"):

out
└── user
    ├── [id].html
    └── new.html

nginx rewrite rules (generated by @progfay/nextjs-ssg-rewrite-rule-gen):

location ~ ^/user/new/?$ {
  rewrite ^/user/new/?$ /user/new.html break;
}

location ~ ^/user/[^/]+?/?$ {
  rewrite ^/user/[^/]+?/?$ /user/[id].html break;
}