UNPKG

@crstn/redirect

Version:

A small package to crawl a site and return a redirect template. This is helpful for migration from one to another website with different url schemes.

66 lines (45 loc) 1.83 kB
# @crstn/redirect A small package to crawl a site and return a redirect template. This is helpful for migration from one to another website with different url schemes. At the moment, only .htaccess redirects are supported. Install as a global NPM module: ```bash npm install -g @crstn/redirect ``` ## Crawling Just type: ```bash redirect https://www.example.com ``` This will crawl the site with a default depth of 2. It's important to pass a canonical url. Adjust the depth by adding the desired value: ```bash redirect https://www.example.com 3 ``` Note: You will need to pass a high depth in order to crawl all links of the given website. Do not pass negative numbers as crawl depth. ### Exclude You can exclude urls by typing: ```bash redirect https://www.example.com 3 jpg,png,gif,pdf ``` This will exclude urls, that end with the appropriate file types. To exclude pages with a specific status: ```bash redirect https://www.example.com 3 n 404,401 ``` This will skip the file type exclusion and exclude page status instead. Or both together: ```bash redirect https://www.example.com 3 jpg,png,gif,pdf 404,401 ``` The file type exclusion will never output matched urls to the console, since they were not crawled. But all urls that doesn't match file type exclusion will be printed as normal – even with a failure status code like 404. However, urls that match an excluded status code, will be excluded from the final redirect template. ## Output The output will be placed in the terminal. Copy it to your favorite text editor and adjust as needed. By default, all pages are being redirected to the passed root url (typically the home page). .htaccess ```bash Redirect 301 / https://www.example.com Redirect 301 /subpage https://www.example.com Redirect 301 /anotherSubpage https://www.example.com ```