2.0.0 • Published 6 years ago

prerender-seo v2.0.0

Weekly downloads
6
License
-
Repository
github
Last release
6 years ago

prerender-seo

Prerender HTML files using Puppeteer.

Install

npm i prerender-seo -D

Usage

const path = require('path')
const prerender = require('prerender-seo')

const files = [
  '/index.html'
]

prerender(
  path.resolve(__dirname, './dist'),
  files,
  {
    // options
  }
)

Test

The test case use a vue-cli generated project

npm run test

Options

NameTypeDefaultDescription
sourceDir{String}-Source directory of static files
files{Array}-HTML Files to prerender
options.destDir{String}*_prerenderDestination directory to store the result
options.proxyTable{Array}[]Proxy to forward any http request that match the config
options.navigationTimeout{Number}30000Define the timeout of any navigation operations
options.resourceInterception{Array}[]Define the regular expression of any resource will be aborted

sourceDir

prerender(
  path.resolve(__dirname, '../dist')
)

files

prerender(
  files: [
    'index.html',
    'about.html',
    'product.html'
  ]
)

options.destDir

Define the destination directory. If you want to replace the source directory, just set the same path as sourceDir.

prerender(
  path.resolve(__dirname, '../dist'),
  files: [
    'index.html',
    'about.html',
    'product.html'
  ],
  {
    destDir: path.resolve(__dirname, '../dist')
  }
)

options.proxyTable

prerender(
  path.resolve(__dirname, '../dist'),
  files: [
    'index.html',
    'about.html',
    'product.html'
  ],
  {
    proxyTable: {
      context: '/api',
      proxy: {
        host: 'example.com',
        port: '80',
        protocol: 'http'
      }
    }
  }
)

options.navigationTimeout

Define the timeout after which any navigation operations will stop trying. (in milli-secs)

prerender(
  path.resolve(__dirname, '../dist'),
  files: [
    'index.html',
    'about.html',
    'product.html'
  ],
  {
    navigationTimeout: 60000
  }
)

options.resourceInterception

Define the regular expression to match any resource url will be aborted before request. The left hand in the array is RegExp pattern, the right hand is RegExp flag.

prerender(
  path.resolve(__dirname, '../dist'),
  files: [
    'index.html',
    'about.html',
    'product.html'
  ],
  {
    resourceInterception: [
      ['hm.baidu.com', 'g'],
      ['/api/tokenAttach', 'g']
    ]
  }
)
2.0.0

6 years ago

1.4.1

6 years ago

1.4.0

6 years ago

1.3.1

6 years ago

1.3.0

6 years ago

1.2.0

6 years ago

1.1.0

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago