@nuxtjs/proxy

proxy support for nuxt server
5,767,891 408
Install
npm install @nuxtjs/proxy
Latest Version:2.1.0
License:MIT
Last Updated:Oct 13, 2026
Links: GitHub  ·  npm

[!NOTE] This repository is archived. @nuxtjs/proxy was built for Nuxt 2, which reached end of life on June 30, 2024. In Nuxt 3+, use route rules with proxy.

@nuxtjs/proxy

npm version npm downloads codecov license

Proxy support for Nuxt 2 server

📖 Release Notes

Nuxt 3

In Nuxt 3 you can make use of Route Rules to configure your proxies.

export default defineNuxtConfig({
  routeRules: {
    '/proxy/example': { proxy: 'https://example.com' },
    '/proxy/**': { proxy: '/api/**' },
  }
})

Features

✓ Path rewrites

✓ Host based router (useful for staging/test)

✓ Logs / Proxy Events

✓ WebSockets

✓ Auth / Cookie

✓ ...See http-proxy-middleware docs

⚠ Does not work with nuxt generate (see static target).

Setup

  1. Add @nuxtjs/proxy dependency to your project
yarn add @nuxtjs/proxy # or npm install @nuxtjs/proxy
  1. Add @nuxtjs/proxy to the modules section of nuxt.config.js
{
  modules: [
    // Simple usage
    '@nuxtjs/proxy'
  ],
  proxy: {
    // see Proxy section
  }
}
  • Define as many as proxy middleware you want in proxy section of nuxt.config.js (See proxy section below)

proxy

You can provide proxy config using either object or array.

Array Config

You can use shorthand syntax to configure proxy:

{
  proxy: [
    // Proxies /foo to http://example.com/foo
    'http://example.com/foo',

    // Proxies /api/books/*/**.json to http://example.com:8000
    'http://example.com:8000/api/books/*/**.json',

    // You can also pass more options
    [ 'http://example.com/foo', { ws: false } ]
  ]
}

Object Config

Keys are context

{
  proxy: {
    // Simple proxy
    '/api': 'http://example.com',

    // With options
    '/api2': {
      target: 'http://example.com',
      ws: false
    },

    // Proxy to backend unix socket
    '/api3': {
      changeOrigin: false,
      target: { socketPath: '/var/run/http-sockets/backend.sock' }
    }
  }
}

Default Options

  • changeOrigin and ws options are enabled by default.

You can provide default options to all proxy targets by passing options to module options:

export default {
  modules: [
    // Disable ws option to all proxified endpoints
    ['@nuxtjs/proxy', { ws: false }]
  ],
  proxy: [
    'http://example.com/foo',
    'http://example.com:8000/api/books/*/**.json',
  ]
}

This will be similar to:

export default {
  modules: [
    '@nuxtjs/proxy',
  ],
  proxy: [
    ['http://example.com/foo', { ws: false }],
    ['http://example.com:8000/api/books/*/**.json', { ws: false }]
  ]
}

Development

  1. Clone this repository
  2. Install dependencies using yarn install or npm install
  3. Start development server using npm run dev

License

MIT License

Copyright (c) Nuxt Community

Related Packages

@nuxtjs/i18n

Internationalization for Nuxt

23,877,608 2,085
@nuxtjs/color-mode

Dark and light mode for Nuxt with auto detection

20,659,199 1,228
@nuxtjs/tailwindcss

Tailwind CSS module for Nuxt

16,852,917 1,868
@nuxtjs/sitemap

Powerfully flexible XML Sitemaps that integrate seamlessly, for Nuxt.

10,334,110 441
@nuxtjs/robots

Tame the robots crawling and indexing your Nuxt site with ease.

8,776,519 529

Version History

Version Released License
2.1.0 MIT
2.0.1 MIT
2.0.0 MIT
1.3.3 MIT
1.3.2 MIT