New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

nuxt-rewrite

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nuxt-rewrite

## What it does?

latest
npmnpm
Version
0.2.0
Version published
Weekly downloads
104
Maintainers
1
Weekly downloads
 
Created
Source

nuxt-rewrite

What it does?

This is a nuxt.js module that adds edge-level rewrite support.

There are conditions that we need to rewrite routes via reverse-proxy, like nginx. So that the final URL that users see is different from what is being rendered. This breaks SSR hydration process becuase client side router tries to render and hydrate an invalid URL.

This module fixes this problem by preserving original rendered URL in the universal state and faking vue-router during initial render with History API. Users still see the requested URL because module reverts it back to the orginal non-rewritten one as soon as initial render happended.

How to use this module?

Via NPM:

npm install nuxt-rewrite

Via Yarn:

yarn add nuxt-rewrite

Then add the module to the modules[] section of nuxt.config:

{
  modules: [
    'nuxt-rewrite'
  ]
}

Notes

  • Having multiple routes that render the same content has really bad SEO effects. Using Canonical meta-tag is mondatory.
  • By doing rewrite at edge level, this happens for SSR requests only and not client-side navigations. So either:
    • Ensure no links in your application explicitly need rewrite
    • If for any reason you have such links, use plain <a> tag that causes a SSR render during navigation so rewrite happens

Development / Demo

  • Clone this repository
  • Install dependencies with yarn
  • Use yarn dev to run demo server.
  • Navigate to http://localhost:3000/test . You should see / route being rendered correctly!

License

MIT

FAQs

Package last updated on 21 Feb 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts