metalsmith-htaccess
TypeScript icon, indicating that this package has built-in type declarations

2.0.1 • Public • Published

metalsmith-htaccess

npm: version npm: downloads

Snyk: vulnerabilities codecov: coverage license

A Metalsmith plugin to create an Apache HTTP Server .htaccess configuration file.

Installation

npm install --save metalsmith-htaccess

JavaScript Usage

const Metalsmith = require('metalsmith');
const htaccess   = require('metalsmith-htaccess');

Metalsmith(__dirname)
    .use(htaccess({
        // options here
    }))
    .build((err) => {
        if (err) {
            throw err;
        }
    });

Options

Core

core.defaultCharset (optional)

Type: string Default: "utf-8"

Sets AddDefaultCharset.

core.serverSignature (optional)

Type: boolean Default: false

Enables or disables ServerSignature.

core.errorDocuments (optional)

Type: object

An object of ErrorDocuments, example:

{
  "core": {
    "errorDocuments": {
      "401": "/error_pages/401.html",
      "404": "/error_pages/404.html",
      "500": "/error_pages/500.html"
    }
  }
}

Core Options

core.options.followSymlinks (optional)

Type: boolean Default: true

Enables or disables FollowSymlinks.

core.options.indexes (optional)

Type: boolean Default: false

Enables or disables Indexes.

core.options.multiViews (optional)

Type: boolean Default: false

Enables or disables MultiViews.

Deflate

deflate.mimeTypes (optional)

Type: string[] Default: ["image/svg+xml", "application/javascript", "application/rss+xml", "application/vnd.ms-fontobject", "application/x-font", "application/x-font-opentype", "application/x-font-otf", "application/x-font-truetype", "application/x-font-ttf", "application/x-javascript", "application/xhtml+xml", "application/xml", "font/opentype", "font/otf", "font/ttf", "image/x-icon", "text/css", "text/html", "text/javascript", "text/plain", "text/xml"]

A list of MIME types to AddOutputFilterByType DEFLATE.

Dir

dir.index (optional)

Type: string Default: "index.html index.htm index.php index.cgi"

Set DirectoryIndex.

Environment

environment.serverAdminEmail (optional)

Type: string

Set SetEnv SERVER_ADMIN.

environment.timezone (optional)

Type: string

Set SetEnv TZ.

Expires

expires.default (optional)

Type: string Default: "access plus 2 days"

Set ExpiresDefault.

expires.types (optional)

Type: object Default:

{
    "image/jpg": "access plus 1 month",
    "image/svg+xml": "access 1 month",
    "image/gif": "access plus 1 month",
    "image/jpeg": "access plus 1 month",
    "image/png": "access plus 1 month",
    "text/css": "access plus 1 month",
    "text/javascript": "access plus 1 month",
    "application/javascript": "access plus 1 month",
    "application/x-shockwave-flash": "access plus 1 month",
    "image/ico": "access plus 1 month",
    "image/x-icon": "access plus 1 month",
    "text/html": "access plus 600 seconds"
}

Set ExpiresByType.

Gzip

gzip.canNegotiate (optional)

Type: boolean

Enables or disables mod_gzip_can_negotiate.

gzip.dechunk (optional)

Type: boolean

Enables or disables mod_gzip_dechunk.

gzip.include (optional)

Type: string[]

A list of mod_gzip_item_include.

gzip.exclude (optional)

Type: string[]

A list of mod_gzip_item_exclude.

Headers

headers.etag (optional)

Type: boolean Default: false

Enables or disables ETag header.

MIME

mime.defaultLanguage (optional)

Type: string

Sets DefaultLanguage.

mime.languages (optional)

Type: object

An object of AddLanguages, example:

{
    "mime": {
        "languages": {
            "en": "en",
            "en-gb": ".en",
            "en-us": ".en"
        }
    }
}

mime.charsets (optional)

Type: object

An object of AddCharsets, example:

{
    "mime": {
        "charsets": {
            "EUC-JP": ".euc",
            "ISO-2022-JP": ".jis",
            "SHIFT_JIS": ".sjis"
        }
    }
}

mime.types (optional)

Type: object

An object of AddTypes, example:

{
    "mime": {
        "types": {
            "image/gif": ".gif",
            "image/jpeg": "jpeg jpg jpe"
        }
    }
}

Rewrite

rewrite.404 (optional)

Type: string

Sets the 404 redirect page.

rewrite.options (optional)

Type: string Default: "Inherit"

Sets RewriteOptions.

rewrite.allowedMethods (optional)

Type: string[]

A list of allowed HTTP methods.

rewrite.httpsRedirect (optional)

Type: boolean

Enable HTTPS redirection.

Spelling

spelling.check (optional)

Type: boolean

Enables or disables CheckSpelling.

Changelog

Changelog

/metalsmith-htaccess/

    Package Sidebar

    Install

    npm i metalsmith-htaccess

    Weekly Downloads

    11

    Version

    2.0.1

    License

    GPL-3.0-or-later

    Unpacked Size

    64.7 kB

    Total Files

    6

    Last publish

    Collaborators

    • emmercm