Compare commits
59 commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
5cd6b70141 | ||
![]() |
31671a2910 | ||
![]() |
67e35ccdda | ||
![]() |
be9a42d19d | ||
![]() |
4ea71e2b6f | ||
![]() |
f203cbf696 | ||
![]() |
610ca5d348 | ||
![]() |
e7ba75e59e | ||
![]() |
402f73502c | ||
![]() |
6e8a0c7d44 | ||
![]() |
75ee05e2ea | ||
![]() |
db54e1140a | ||
![]() |
e2a2b2b98b | ||
![]() |
8c786ec724 | ||
![]() |
7308d4865e | ||
![]() |
899483b57c | ||
![]() |
59d1ebd78c | ||
![]() |
6750103c12 | ||
![]() |
bf62557251 | ||
![]() |
358402a0bc | ||
![]() |
cd0df14e0a | ||
![]() |
addecbd7da | ||
![]() |
412d1ed10d | ||
![]() |
739485b01d | ||
![]() |
aeb7648e35 | ||
![]() |
64f7d901f9 | ||
![]() |
c2680f8052 | ||
![]() |
055edf7671 | ||
![]() |
4e22069472 | ||
![]() |
499237b80e | ||
![]() |
cc37ef8588 | ||
![]() |
69062c6951 | ||
![]() |
f7a51a3730 | ||
![]() |
12bb09576e | ||
![]() |
2787739fb3 | ||
![]() |
de3682fe5e | ||
![]() |
cc2247dc9b | ||
![]() |
d4b40d8336 | ||
![]() |
4431a7754b | ||
![]() |
0569f8d651 | ||
![]() |
6b5c030200 | ||
![]() |
a4a02de68d | ||
![]() |
3bf81ef4d8 | ||
![]() |
0bfe04a091 | ||
![]() |
564204d75a | ||
![]() |
3bf12ef421 | ||
![]() |
cd357480ca | ||
![]() |
b5e45ee396 | ||
![]() |
0ac8f1aab5 | ||
![]() |
82db1757ed | ||
![]() |
48506f7a60 | ||
![]() |
111def4854 | ||
![]() |
08596efad7 | ||
![]() |
52de0336de | ||
![]() |
2057c2aaca | ||
![]() |
72d6569315 | ||
![]() |
99a8f375e8 | ||
![]() |
4c6f528d37 | ||
![]() |
56d10ade09 |
67 changed files with 6151 additions and 1045 deletions
3
.eslintrc
Normal file
3
.eslintrc
Normal file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"extends": ["eslint:recommended", "aenondynamics"]
|
||||
}
|
67
CHANGES.md
67
CHANGES.md
|
@ -1,15 +1,76 @@
|
|||
## 0.4.1 ##
|
||||
CHANGELOG
|
||||
======================================================
|
||||
|
||||
Branch 3.X.X
|
||||
------------------------------------------------------
|
||||
|
||||
### 3.1.0 ###
|
||||
|
||||
* Added: exposed `express.js` response object within `filter()` callback
|
||||
|
||||
|
||||
### 3.0.0 ###
|
||||
|
||||
* Refactored the whole codebase
|
||||
* Added: template support for `pagetitle` (automatically set if not defined)
|
||||
* Added: option to set the pagetitle directly via `payload.pagetitle` (koa+expressjs)
|
||||
* Added: filter function to dynamically manipulate the errordata object (koa+expressjs)
|
||||
* Added: support for additional variables/payloads
|
||||
* Added: support for placeholders to static page generator
|
||||
* Added: iso-639-1 `language` attribute (derived from page lang)
|
||||
* Added: error/exception object available via `error` (koa+expressjs)
|
||||
* Added: `onError` callback as debug error handler (not to be used in production)
|
||||
* Changed: moved `footer` content into `payload` object
|
||||
* Changed: all variables within the `ejs` template are only accessible via `vars` object
|
||||
|
||||
Branch 2.X.X
|
||||
------------------------------------------------------
|
||||
|
||||
### 2.0.1 ###
|
||||
* Bugfix: gulp4 compatibility
|
||||
|
||||
### 2.0.0 ###
|
||||
* Added [koa](http://koajs.com/) support
|
||||
* Added support for multiple http frameworks
|
||||
* Changed: **express.js** error handler is encapsulated within the `express()` function
|
||||
* Changed: moved middleware example to `examples/`
|
||||
|
||||
Branch 1.X.X
|
||||
------------------------------------------------------
|
||||
|
||||
### 1.0.0 ###
|
||||
* New Generator/Build System: [EJS](https://github.com/mde/ejs) (templates), [SCSS](http://sass-lang.com/) (styles) and [GULP](https://gulpjs.com/) (build) are used as a replacement of the historical php/bash/ant/less setup.
|
||||
* New express.js integration/middleware (full asynchronous operation)
|
||||
* JSON based page definitions including **i18n** support
|
||||
* Option to use custom styles
|
||||
* Option to use custom template
|
||||
* Changed: middleware API (express.js)
|
||||
* Changed: generator script is based on **javascript**
|
||||
|
||||
Preliminary
|
||||
------------------------------------------------------
|
||||
|
||||
### 0.5.2 ###
|
||||
* Bugfix: package.json contains invalid main/app entry file
|
||||
|
||||
### 0.5.1 ###
|
||||
* Bugfix: `lib/` directory was not included in the npm package
|
||||
|
||||
### 0.5.0 ###
|
||||
* Added: expressjs support with native npm package/error handler
|
||||
|
||||
### 0.4.1 ###
|
||||
* Bugfix: Restored NGINX Configuration from 0331dac487caa0b3ddb5897b5d35afc2c01dfbd5
|
||||
* Added: Semantic Versioning
|
||||
|
||||
## 0.4 ##
|
||||
### 0.4 ###
|
||||
* Added: **ANT** based build file
|
||||
* Added: Configuration file `config.ini`
|
||||
* Added: Prebuild Packages (includes all generated html file)
|
||||
* Changed the directory structure
|
||||
* Demo Pages are hosted via GitHub Pages (located within the `docs/` dir)
|
||||
|
||||
## 0.3 ##
|
||||
### 0.3 ###
|
||||
* Replaced Bootstrap by small inline styles
|
||||
* Added optional footer contact address
|
||||
* PHP template (`template.phtml`) is used instead of simple text based template
|
|
@ -1,6 +1,6 @@
|
|||
The MIT License (X11 License)
|
||||
|
||||
Copyright (c) 2014-2017 Andi Dittrich
|
||||
Copyright (c) 2014-2020 Andi Dittrich
|
||||
|
||||
Permission is hereby granted, free of charge, to any person
|
||||
obtaining a copy of this software and associated documentation
|
||||
|
|
538
README.md
538
README.md
|
@ -1,97 +1,78 @@
|
|||
# Simple HttpErrorPages #
|
||||
Simple HTTP Error Page Generator. Create a bunch of custom error pages - suitable to use with Lighttpd, Nginx, Apache-Httpd or any other Webserver.
|
||||
[nginx](#nginx-integration) |
|
||||
[Apache HTTPD](#apache-httpd-integration) |
|
||||
[Lighttpd](#lighttpd-integration) |
|
||||
[express.js](#expressjs-integration) |
|
||||
[koa.js](#koajs-integration) |
|
||||
[Caddy](#caddy-integration) |
|
||||
[Customization](#customization)
|
||||
|
||||

|
||||
# Simple HttpErrorPages #
|
||||
Simple HTTP Error Page Generator. Create a bunch of custom error pages - suitable to use with Lighttpd, Nginx, expressjs, koajs ,Apache-Httpd or any other Webserver.
|
||||
|
||||

|
||||
|
||||
## Features ##
|
||||
|
||||
* Static pages (for webservers)
|
||||
* Multi-Language (i18n) support
|
||||
* Generator script to customize pages
|
||||
* Native [express.js](http://expressjs.com/) middleware
|
||||
* Native [koa.js](http://koajs.com/) middleware
|
||||
|
||||
## Demo ##
|
||||
* [HTTP400](https://andidittrich.github.io/HttpErrorPages/HTTP400.html)
|
||||
* [HTTP401](https://andidittrich.github.io/HttpErrorPages/HTTP401.html)
|
||||
* [HTTP403](https://andidittrich.github.io/HttpErrorPages/HTTP403.html)
|
||||
* [HTTP404](https://andidittrich.github.io/HttpErrorPages/HTTP404.html)
|
||||
* [HTTP500](https://andidittrich.github.io/HttpErrorPages/HTTP500.html)
|
||||
* [HTTP501](https://andidittrich.github.io/HttpErrorPages/HTTP501.html)
|
||||
* [HTTP502](https://andidittrich.github.io/HttpErrorPages/HTTP502.html)
|
||||
* [HTTP503](https://andidittrich.github.io/HttpErrorPages/HTTP503.html)
|
||||
* [HTTP520](https://andidittrich.github.io/HttpErrorPages/HTTP520.html)
|
||||
* [HTTP521](https://andidittrich.github.io/HttpErrorPages/HTTP521.html)
|
||||
* [HTTP400](https://httperrorpages.github.io/HttpErrorPages/HTTP400.html)
|
||||
* [HTTP401](https://httperrorpages.github.io/HttpErrorPages/HTTP401.html)
|
||||
* [HTTP403](https://httperrorpages.github.io/HttpErrorPages/HTTP403.html)
|
||||
* [HTTP404](https://httperrorpages.github.io/HttpErrorPages/HTTP404.html)
|
||||
* [HTTP500](https://httperrorpages.github.io/HttpErrorPages/HTTP500.html)
|
||||
* [HTTP501](https://httperrorpages.github.io/HttpErrorPages/HTTP501.html)
|
||||
* [HTTP502](https://httperrorpages.github.io/HttpErrorPages/HTTP502.html)
|
||||
* [HTTP503](https://httperrorpages.github.io/HttpErrorPages/HTTP503.html)
|
||||
* [HTTP520](https://httperrorpages.github.io/HttpErrorPages/HTTP520.html)
|
||||
* [HTTP521](https://httperrorpages.github.io/HttpErrorPages/HTTP521.html)
|
||||
|
||||
## Download ##
|
||||
Just clone/download the git repository **or** use the prebuild packages (only the generated html files are included)
|
||||
|
||||
## Download Prebuild Packages (Pages only) ##
|
||||
## Download Prebuild Packages (Pages only, en_US) ##
|
||||
|
||||
**Direct Download**
|
||||
* [Download TAR Archive](https://raw.githubusercontent.com/AndiDittrich/HttpErrorPages/master/dist/pages.tar)
|
||||
* [Download ZIP Archive](https://raw.githubusercontent.com/AndiDittrich/HttpErrorPages/master/dist/pages.zip)
|
||||
|
||||
**Shell/Bash**
|
||||
```shell
|
||||
# TAR Archive
|
||||
wget https://raw.githubusercontent.com/AndiDittrich/HttpErrorPages/master/dist/pages.tar
|
||||
|
||||
# ZIP Archive
|
||||
wget https://raw.githubusercontent.com/AndiDittrich/HttpErrorPages/master/dist/pages.zip
|
||||
```
|
||||
* [Download Single Files](https://github.com/HttpErrorPages/HttpErrorPages/tree/master/dist)
|
||||
|
||||
## NGINX Integration ##
|
||||
|
||||
[NGINX](http://nginx.org/en/docs/http/ngx_http_core_module.html#error_page) supports custom error-pages using multiple `error_page` directives.
|
||||
|
||||
File: `default.conf`
|
||||
File: [`default.conf`](https://www.nginx.com/resources/wiki/start/topics/examples/full/)
|
||||
|
||||
Example - assumes HttpErrorPages are located into `/var/www/ErrorPages/`.
|
||||
Example - assumes HttpErrorPages are located into `/var/ErrorPages/`.
|
||||
|
||||
```nginx
|
||||
# add one directive for each http status code
|
||||
error_page 400 /ErrorPages/HTTP400.html;
|
||||
error_page 401 /ErrorPages/HTTP401.html;
|
||||
error_page 402 /ErrorPages/HTTP402.html;
|
||||
error_page 403 /ErrorPages/HTTP403.html;
|
||||
error_page 404 /ErrorPages/HTTP404.html;
|
||||
error_page 500 /ErrorPages/HTTP500.html;
|
||||
error_page 501 /ErrorPages/HTTP501.html;
|
||||
error_page 502 /ErrorPages/HTTP502.html;
|
||||
error_page 503 /ErrorPages/HTTP503.html;
|
||||
server {
|
||||
listen 80;
|
||||
server_name localhost;
|
||||
root /var/www;
|
||||
index index.html;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
|
||||
# add one directive for each http status code
|
||||
error_page 400 /ErrorPages/HTTP400.html;
|
||||
error_page 401 /ErrorPages/HTTP401.html;
|
||||
error_page 402 /ErrorPages/HTTP402.html;
|
||||
error_page 403 /ErrorPages/HTTP403.html;
|
||||
error_page 404 /ErrorPages/HTTP404.html;
|
||||
error_page 500 /ErrorPages/HTTP500.html;
|
||||
error_page 501 /ErrorPages/HTTP501.html;
|
||||
error_page 502 /ErrorPages/HTTP502.html;
|
||||
error_page 503 /ErrorPages/HTTP503.html;
|
||||
}
|
||||
|
||||
# redirect the virtual ErrorPages path the real path
|
||||
location /ErrorPages/ {
|
||||
alias /var/www/ErrorPages/;
|
||||
internal;
|
||||
}
|
||||
```
|
||||
|
||||
## expressjs Integration ##
|
||||
|
||||
HttpErrorPages are available as NPM-Package - just install `http-error-pages` via **npm/yarn**
|
||||
|
||||
```terminal
|
||||
npm install http-error-pages --save
|
||||
```
|
||||
|
||||
Example
|
||||
|
||||
```js
|
||||
var _express = require('express');
|
||||
var _webapp = _express();
|
||||
var _httpErrorPages = require('http-error-pages');
|
||||
|
||||
// demo handler
|
||||
_webapp.get('/', function(req, res){
|
||||
res.type('.txt').send('HttpErrorPages Demo');
|
||||
});
|
||||
|
||||
// throw an 403 error
|
||||
_webapp.get('/my403error', function(req, res, next){
|
||||
var myError = new Error();
|
||||
myError.status = 403;
|
||||
next(myError);
|
||||
});
|
||||
|
||||
// use http error pages handler (final statement!)
|
||||
_httpErrorPages(_webapp);
|
||||
|
||||
// start service
|
||||
_webapp.listen(8888);
|
||||
# redirect the virtual ErrorPages path the real path
|
||||
location /ErrorPages/ {
|
||||
alias /var/ErrorPages/;
|
||||
internal;
|
||||
}
|
||||
```
|
||||
|
||||
## Apache Httpd Integration ##
|
||||
|
@ -124,66 +105,389 @@ Example - assumes HttpErrorPages are located into `/var/www/ErrorPages/`.
|
|||
server.errorfile-prefix = "/var/www/ErrorPages/HTTP"
|
||||
```
|
||||
|
||||
## expressjs Integration ##
|
||||
|
||||
HttpErrorPages are available as NPM-Package - just install `http-error-pages` via **npm/yarn**
|
||||
|
||||
**Installation**
|
||||
|
||||
```terminal
|
||||
yarn add http-error-pages
|
||||
```
|
||||
|
||||
**Example**
|
||||
|
||||
A ready-to-use example can be found in [examples/express.js](examples/express.js)
|
||||
|
||||
```js
|
||||
const _express = require('express');
|
||||
const _webapp = _express();
|
||||
const _httpErrorPages = require('http-error-pages');
|
||||
|
||||
async function bootstrap(){
|
||||
// demo handler
|
||||
_webapp.get('/', function(req, res){
|
||||
res.type('.txt').send('HttpErrorPages Demo');
|
||||
});
|
||||
|
||||
// throw an 403 error
|
||||
_webapp.get('/my403error', function(req, res, next){
|
||||
const myError = new Error();
|
||||
myError.status = 403;
|
||||
next(myError);
|
||||
});
|
||||
|
||||
// throw an internal error
|
||||
_webapp.get('/500', function(req, res){
|
||||
throw new Error('Server Error');
|
||||
});
|
||||
|
||||
// use http error pages handler (final statement!)
|
||||
// because of the asynchronous file-loaders, wait until it has been executed
|
||||
await _httpErrorPages.express(_webapp, {
|
||||
lang: 'en_US',
|
||||
payload: {
|
||||
footer: 'Hello <strong>World</strong>',
|
||||
myvar: 'hello world'
|
||||
}
|
||||
});
|
||||
|
||||
// start service
|
||||
_webapp.listen(8888);
|
||||
}
|
||||
|
||||
// invoke bootstrap operation
|
||||
bootstrap()
|
||||
.then(function(){
|
||||
console.log('Running Demo on Port 8888');
|
||||
})
|
||||
.catch(function(e){
|
||||
console.error(e);
|
||||
});
|
||||
```
|
||||
|
||||
**Options**
|
||||
|
||||
Syntax: `Promise _httpErrorPages.express(expressWebapp [, options:Object])`
|
||||
|
||||
* `template` (type:string) - the path to a custom **EJS** template used to generate the pages. default [assets/template.ejs](assets/template.ejs)
|
||||
* `css` (type:string) - the path to a precompiled **CSS** file injected into the page. default [assets/layout.css](assets/layout.css)
|
||||
* `lang` (type:string) - language definition which should be used (available in the `i18n/` directory). default **en_US**
|
||||
* `payload` (type:object) - additional variables available within the template
|
||||
* `payload.footer` (type:string) - optional page footer content (html allowed). default **null**
|
||||
* `filter` (type:function) - filter callback to manipulate the variables before populated within the template
|
||||
* `onError` (type:function) - simple debug handler to print errors to the console (not to be used in production!)
|
||||
|
||||
## koajs Integration ##
|
||||
|
||||
HttpErrorPages are available as NPM-Package - just install `http-error-pages` via **npm/yarn**
|
||||
|
||||
**Installation**
|
||||
|
||||
```terminal
|
||||
yarn add http-error-pages
|
||||
```
|
||||
|
||||
**Example**
|
||||
|
||||
A ready-to-use example can be found in [examples/koa.js](examples/koa.js).
|
||||
Keep in mind that the following example has to be executed within an async context!
|
||||
|
||||
```js
|
||||
const _koa = require('koa');
|
||||
const _webapp = new _koa();
|
||||
const _httpErrorPages = require('http-error-pages');
|
||||
|
||||
// use http error pages handler (INITIAL statement!)
|
||||
// because of the asynchronous file-loaders, wait until it has been executed - it returns an async handler
|
||||
_webapp.use(await _httpErrorPages.koa({
|
||||
lang: 'en_US',
|
||||
payload: {
|
||||
footer: 'Hello <strong>World</strong>',
|
||||
myvar: 'hello world'
|
||||
}
|
||||
|
||||
}));
|
||||
|
||||
// add other middleware handlers
|
||||
_webapp.use(async (ctx, next) => {
|
||||
if (ctx.path == '/'){
|
||||
ctx.type = 'text';
|
||||
ctx.body = 'HttpErrorPages Demo';
|
||||
}else{
|
||||
return next();
|
||||
}
|
||||
});
|
||||
|
||||
// start service
|
||||
_webapp.listen(8888);
|
||||
```
|
||||
|
||||
**Options**
|
||||
|
||||
Syntax: `Promise _httpErrorPages.koa([options:Object])`
|
||||
|
||||
* `template` (type:string) - the path to a custom **EJS** template used to generate the pages. default [assets/template.ejs](assets/template.ejs)
|
||||
* `css` (type:string) - the path to a precompiled **CSS** file injected into the page. default [assets/layout.css](assets/layout.css)
|
||||
* `lang` (type:string) - language definition which should be used (available in the `i18n/` directory). default **en_US**
|
||||
* `payload` (type:object) - additional variables available within the template
|
||||
* `payload.footer` (type:string) - optional page footer content (html allowed). default **null**
|
||||
* `filter` (type:function) - filter callback to manipulate the variables before populated within the template
|
||||
* `onError` (type:function) - simple debug handler to print errors to the console (not to be used in production!)
|
||||
|
||||
## Caddy Integration ##
|
||||
|
||||
[Caddy](https://caddyserver.com/docs/errors) supports custom error-pages using `errors` directive.
|
||||
|
||||
File: Caddyfile
|
||||
|
||||
Example - assumes HttpErrorPages are located into `/var/www/error`.
|
||||
|
||||
```Caddyfile
|
||||
www.yoursite.com {
|
||||
|
||||
// Other configurations
|
||||
|
||||
errors {
|
||||
404 /var/www/error/HTTP404.html
|
||||
}
|
||||
|
||||
// Other configurations
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
## Customization ##
|
||||
To customize the pages, you can edit the **template.phtml** file and add your own styles. Finally run the generator-script.
|
||||
If you wan't to add custom pages/additional error-codes, just put a new entry into the `pages.php` file. The generator-script will process each entry and generates an own page.
|
||||
|
||||
#### Custom Page Example (pages.php) ####
|
||||
First of all, [clone](https://github.com/HttpErrorPages/HttpErrorPages.git)
|
||||
or [download](https://github.com/HttpErrorPages/HttpErrorPages/archive/master.zip) the http-error-pages repository.
|
||||
|
||||
Custom Error-Codes used by e.g. CloudFlare
|
||||
### Install Dependencies ###
|
||||
|
||||
```php
|
||||
// webserver origin error
|
||||
'520' => array(
|
||||
'title' => 'Origin Error - Unknown Host',
|
||||
'message' => 'The requested hostname is not routed. Use only hostnames to access resources.'
|
||||
),
|
||||
You have to install the node **dev** dependencies to build the pages:
|
||||
|
||||
// webserver down error
|
||||
'521' => array (
|
||||
'title' => 'Webservice currently unavailable',
|
||||
'message' => "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
)
|
||||
```
|
||||
|
||||
### Build/Generator ###
|
||||
Used Naming-Scheme: `HTTP#CODE#.html` (customizable by editing the `config.ini`)
|
||||
To generate the static html pages, run the `generator.php` script:
|
||||
|
||||
```shell
|
||||
php generator.php
|
||||
```bash
|
||||
# run the yarn command within the cloned repository
|
||||
yarn install
|
||||
|
||||
# or if you more familiar with npm..
|
||||
npm install
|
||||
```
|
||||
|
||||
To customize the pages, you can edit any of the [template files](assets/) and **finally run the generator-script**.
|
||||
All generated html files are located into the `dist/` directory by default.
|
||||
|
||||
### Compile LESS Files ###
|
||||
To rebuild the LESS files run the **ANT** build script (requires lessc in your path):
|
||||
If you wan't to add custom pages/additional error-codes, just put a new entry into the `i18n/pages-en_US.json` file (its recommended to copy the file).
|
||||
The generator-script will process each entry and generates an own page.
|
||||
|
||||
```shell
|
||||
ant css
|
||||
### Files ###
|
||||
|
||||
* [config.json](config.json) - basic configuration options
|
||||
* [assets/layout.scss](assets/layout.scss) - the SCSS based styles
|
||||
* [assets/template.ejs](assets/template.ejs) - the EJS based page template
|
||||
* [i18n/pages-<lang>.json](i18n/) - the page definitions (multilanguage)
|
||||
* [dist/*.html](dist/) - generator output directory
|
||||
|
||||
### Change page styles ###
|
||||
|
||||
To modify the page styles, just edit the SCSS based layout [assets/layout.scss](assets/layout.scss) and finally run **gulp** to generate the css code.
|
||||
The new layout file is stored in [assets/layout.css](assets/layout.css) - run the page generator to create the pages.
|
||||
|
||||
**Example**
|
||||
|
||||
```bash
|
||||
# start gulp sccs via npm
|
||||
$ npm run gulp
|
||||
|
||||
> http-error-pages@0.6.0 gulp HttpErrorPages
|
||||
> gulp
|
||||
|
||||
[08:40:33] Using gulpfile HttpErrorPages/gulpfile.js
|
||||
[08:40:33] Starting 'sass'...
|
||||
[08:40:34] Finished 'sass' after 108 ms
|
||||
[08:40:34] Starting 'default'...
|
||||
[08:40:34] Finished 'default' after 40 μs
|
||||
|
||||
# generate http-error-pages using modified stylesheet
|
||||
$ npm run static
|
||||
|
||||
> http-error-pages@0.6.0 static HttpErrorPages
|
||||
> node bin/generator.js static
|
||||
|
||||
Paths
|
||||
|- Config: HttpErrorPages/config.json
|
||||
|- Template: HttpErrorPages/assets/template.ejs
|
||||
|- Styles: HttpErrorPages/assets/layout.css
|
||||
|- Pages: HttpErrorPages/i18n/pages-en_US.json
|
||||
|
||||
Generating static pages
|
||||
|- Page <HTTP404.html>
|
||||
|- Page <HTTP403.html>
|
||||
|- Page <HTTP400.html>
|
||||
|- Page <HTTP500.html>
|
||||
|- Page <HTTP501.html>
|
||||
|- Page <HTTP502.html>
|
||||
|- Page <HTTP520.html>
|
||||
|- Page <HTTP503.html>
|
||||
|- Page <HTTP521.html>
|
||||
|- Page <HTTP533.html>
|
||||
|- Page <HTTP401.html>
|
||||
Static files generated
|
||||
```
|
||||
|
||||
### Multi language (i18n) ###
|
||||
|
||||
### Configuration ###
|
||||
To use a different language just provide a custom [page definition](i18n/) - in case the file is located in `i18n` you can use the `--lang option`
|
||||
|
||||
It's possible to change the basic configuration without modifying the generator script. Just change the following variables within the `config.ini`.
|
||||
**Example**
|
||||
```terminal
|
||||
$ npm run static -- --lang pt_BR
|
||||
|
||||
You can also specify a custom configuration file by passing it as first argument to the generator script `php generator.php path/myconfig.ini`
|
||||
> http-error-pages@0.6.0 static HttpErrorPages
|
||||
> node bin/generator.js static "--lang" "pt_BR"
|
||||
|
||||
**config.ini**
|
||||
Paths
|
||||
|- Config: HttpErrorPages/config.json
|
||||
|- Template: HttpErrorPages/assets/template.ejs
|
||||
|- Styles: HttpErrorPages/assets/layout.css
|
||||
|- Pages: HttpErrorPages/i18n/pages-pt_BR.json
|
||||
|
||||
```ini
|
||||
[global]
|
||||
Generating static pages
|
||||
|- Page <HTTP404.html>
|
||||
|- Page <HTTP400.html>
|
||||
|- Page <HTTP401.html>
|
||||
|- Page <HTTP403.html>
|
||||
|- Page <HTTP500.html>
|
||||
|- Page <HTTP501.html>
|
||||
|- Page <HTTP502.html>
|
||||
|- Page <HTTP520.html>
|
||||
|- Page <HTTP503.html>
|
||||
|- Page <HTTP521.html>
|
||||
|- Page <HTTP533.html>
|
||||
Static files generated
|
||||
|
||||
; Output Filename Scheme - eg. HTTP500.html
|
||||
scheme='HTTP%d.html'
|
||||
```
|
||||
|
||||
; Output dir path
|
||||
output_dir="docs/"
|
||||
### Add custom pages ###
|
||||
|
||||
; Footer content (HTML Allowed)
|
||||
footer = "Technical Contact: <a href="mailto:x@example.com">x@example.com</a>"
|
||||
Create custom error codes/pages used by e.g. CloudFlare
|
||||
|
||||
**Example**
|
||||
```js
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "Origin Error - Unknown Host",
|
||||
"message": "The requested hostname is not routed. Use only hostnames to access resources."
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Webservice currently unavailable",
|
||||
"message": "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
},
|
||||
```
|
||||
|
||||
### Change footer message ###
|
||||
|
||||
The footer message can easily be changed/removed by editing [config.json](config.json).
|
||||
|
||||
**Example - customm footer**
|
||||
|
||||
```js
|
||||
{
|
||||
// Output Filename Scheme - eg. HTTP500.html
|
||||
"scheme": "HTTP%code%.html",
|
||||
|
||||
// Footer content (HTML Allowed)
|
||||
"footer": "Contact <a href=\"mailto:info@example.org\">info@example.org</a>"
|
||||
}
|
||||
```
|
||||
|
||||
**Example - no footer**
|
||||
|
||||
```js
|
||||
{
|
||||
// Output Filename Scheme - eg. HTTP500.html
|
||||
"scheme": "HTTP%code%.html"
|
||||
}
|
||||
```
|
||||
|
||||
### Placeholders/Variables ###
|
||||
|
||||
The following set of variables is exposed to the ejs template (404 page example):
|
||||
|
||||
```js
|
||||
{
|
||||
title: 'Resource not found',
|
||||
message: 'The requested resource could not be found but may be available again in the future.',
|
||||
code: '404',
|
||||
language: 'en',
|
||||
scheme: 'HTTP%code%.html',
|
||||
pagetitle: "We've got some trouble | %code% - %title%",
|
||||
footer: 'Tech Contact <a href="mailto:info@example.org">info@example.org</a>',
|
||||
myvar: 'Hello World'
|
||||
}
|
||||
```
|
||||
|
||||
To generate dynamic titles/content based on the current variable set, each variable is exposed as `placeholder` (surrounded by `%`).
|
||||
|
||||
You can also define custom variable within the page definitions, everything is merged togehter.
|
||||
|
||||
### Modify the HTML template ###
|
||||
|
||||
The HTML template is based on [ejs](https://github.com/mde/ejs) and located in [assets/template.ejs](assets/template.ejs) - you can apply any kind of changes.
|
||||
|
||||
```html
|
||||
<!DOCTYPE html>
|
||||
<html lang="<%= vars.language %>">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title><%= vars.pagetitle %></title>
|
||||
<style type="text/css"><%- vars.inlinecss %></style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="cover"><h1><%= vars.title %> <small><%= vars.code %></small></h1><p class="lead"><%= vars.message %></p></div>
|
||||
<% if (vars.footer){ %><footer><p><%- vars.footer %></p></footer><% } %>
|
||||
</body>
|
||||
</html>
|
||||
```
|
||||
|
||||
### Command line options ###
|
||||
|
||||
The [http-error-pages generator](bin/generator.js) allows you to use custom template/config files directly. **This is the recommended method to create full-customized pages.**
|
||||
|
||||
```terminal
|
||||
$ npm run static -- --help
|
||||
|
||||
> http-error-pages@0.6.0 static HttpErrorPages
|
||||
> node bin/generator.js static "--help"
|
||||
|
||||
Usage: static [options] [config]
|
||||
|
||||
run http-error-pages generator
|
||||
|
||||
Options:
|
||||
|
||||
-t, --template <path> path to your custom EJS template file
|
||||
-s, --styles <path> path to your custom stylesheet (precompiled as CSS!)
|
||||
-p, --pages <path> path to your custom page definition
|
||||
-l, --lang <lang> the language of the default page definition
|
||||
-o, --out <path> output directory
|
||||
-h, --help output usage information
|
||||
```
|
||||
|
||||
**Example - use custom files**
|
||||
|
||||
We assume you've created a folder named `example_org` which contains all relevant template files
|
||||
|
||||
```bash
|
||||
# via npm run-script (cross platform)
|
||||
$ npm run static -- -t example_org/template.ejs -s example_org/styles.css -p example_org/pages.json -o example_org/output
|
||||
|
||||
# .. or directly (linux only)
|
||||
$ http-error-pages -t example_org/template.ejs -s example_org/styles.css -p example_org/pages.json -o example_org/output
|
||||
```
|
||||
|
||||
## License ##
|
||||
HttpErrorsPages is OpenSource and licensed under the Terms of [The MIT License (X11)](http://opensource.org/licenses/MIT) - your're welcome to contribute
|
||||
HttpErrorsPages is OpenSource and licensed under the Terms of [The MIT License (X11)](http://opensource.org/licenses/MIT) - your're welcome to contribute
|
||||
|
|
|
@ -1 +1 @@
|
|||
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}
|
||||
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}
|
|
@ -1,4 +1,4 @@
|
|||
@import (inline) "normalize-5.0.0.css";
|
||||
@import "normalize-5.0.0.css";
|
||||
|
||||
/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */
|
||||
html,body {
|
||||
|
@ -25,14 +25,15 @@ h1{
|
|||
line-height: 1.1;
|
||||
color: inherit;
|
||||
font-size: 36px;
|
||||
|
||||
small{
|
||||
font-size: 68%;
|
||||
font-weight: 400;
|
||||
line-height: 1;
|
||||
color: #777777;
|
||||
}
|
||||
}
|
||||
|
||||
h1 small{
|
||||
font-size: 68%;
|
||||
font-weight: 400;
|
||||
line-height: 1;
|
||||
color: #777777;
|
||||
}
|
||||
a{
|
||||
text-decoration: none;
|
||||
color: #ffffff;
|
13
assets/template.ejs
Normal file
13
assets/template.ejs
Normal file
|
@ -0,0 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="<%= vars.language %>">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title><%= vars.pagetitle %></title>
|
||||
<style type="text/css"><%- vars.inlinecss %></style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="cover"><h1><%= vars.title %> <small><%= vars.code %></small></h1><p class="lead"><%= vars.message %></p></div>
|
||||
<% if (vars.footer){ %><footer><p><%- vars.footer %></p></footer><% } %>
|
||||
</body>
|
||||
</html>
|
134
bin/generator.js
Normal file
134
bin/generator.js
Normal file
|
@ -0,0 +1,134 @@
|
|||
#!/usr/bin/env node
|
||||
|
||||
const _fs = require('fs-magic');
|
||||
const _path = require('path');
|
||||
const _cli = require('commander');
|
||||
const _pkg = require('../package.json');
|
||||
const _render = require('../lib/page-renderer');
|
||||
const _jsonReader = require('../lib/json-reader');
|
||||
const _getResources = require('../lib/resources');
|
||||
|
||||
// paths
|
||||
const _assetsPath = _path.join(__dirname, '../assets');
|
||||
const _langPath = _path.join(__dirname, '../i18n');
|
||||
|
||||
// default files
|
||||
const _defaults = {
|
||||
distDir: _path.join(__dirname, '../dist'),
|
||||
configFile: _path.join(__dirname, '../config.json'),
|
||||
templateFile: _path.join(_assetsPath, 'template.ejs'),
|
||||
cssFile: _path.join(_assetsPath, 'layout.css')
|
||||
};
|
||||
|
||||
// generate static pages
|
||||
async function generator(configFilename, distPath, opt){
|
||||
// load config
|
||||
const config = await _jsonReader(configFilename);
|
||||
|
||||
// load page definitions
|
||||
const pageDefinitions = await _jsonReader(opt.pages);
|
||||
|
||||
// load resources
|
||||
const resources = await _getResources({
|
||||
template: opt.template,
|
||||
stylesheet: opt.stylesheet,
|
||||
lang: null
|
||||
});
|
||||
|
||||
console.log('Generating static pages');
|
||||
|
||||
// for each errorcode generate custom page
|
||||
await Promise.all(Object.keys(pageDefinitions).map(async function(code){
|
||||
// get page config. title+message available
|
||||
const pageData = pageDefinitions[code];
|
||||
|
||||
// merge variables for ejs template usage
|
||||
const templateVars = Object.assign({}, pageData, {
|
||||
code: code,
|
||||
language: opt.lang.substr(0, 2)
|
||||
}, config);
|
||||
|
||||
// apply filter for template variable usage within the config
|
||||
const varNames = Object.keys(templateVars);
|
||||
const placeholderData = Object.assign({}, templateVars);
|
||||
for (const key in templateVars){
|
||||
templateVars[key] = templateVars[key] && templateVars[key].replace(/%([\w]+)%/g, function(match, name){
|
||||
// name exists ?
|
||||
if (varNames.includes(name)){
|
||||
return placeholderData[name];
|
||||
}else{
|
||||
throw new Error(`unknown placeholder "${name}" used in template variable [${key}]`);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// render page
|
||||
const content = await _render(resources.template, resources.stylesheet, templateVars);
|
||||
|
||||
// write content to file
|
||||
await _fs.writeFile(_path.join(distPath, templateVars.scheme), content, 'utf8');
|
||||
|
||||
console.log(` |- Page <${templateVars.scheme}>`);
|
||||
}));
|
||||
}
|
||||
|
||||
// CLI setup
|
||||
_cli
|
||||
// read file version package.json
|
||||
.version(_pkg.version)
|
||||
|
||||
// static error page generator
|
||||
.command('static [config]')
|
||||
.description('run http-error-pages generator')
|
||||
.option('-t, --template <path>', 'path to your custom EJS template file', _defaults.templateFile)
|
||||
.option('-s, --styles <path>', 'path to your custom stylesheet (precompiled as CSS!)', _defaults.cssFile)
|
||||
.option('-p, --pages <path>', 'path to your custom page definition', null)
|
||||
.option('-l, --lang <lang>', 'the language of the default page definition', 'en_US')
|
||||
.option('-o, --out <path>', 'output directory', _defaults.distDir)
|
||||
|
||||
.action(function(configFilename, options){
|
||||
// config set ?
|
||||
const configPath = configFilename || _defaults.configFile;
|
||||
|
||||
// custom page definition available ?
|
||||
const pageDefinitionFile = options.pages || _path.join(_langPath, 'pages-'+ options.lang + '.json');
|
||||
|
||||
// show paths
|
||||
console.log('');
|
||||
console.log('Paths');
|
||||
console.log(' |- Config:', configPath);
|
||||
console.log(' |- Template:', options.template);
|
||||
console.log(' |- Styles:', options.styles);
|
||||
console.log(' |- Pages:', pageDefinitionFile);
|
||||
console.log('');
|
||||
|
||||
// run async generator
|
||||
generator(configPath, options.out, {
|
||||
template: options.template,
|
||||
stylesheet: options.styles,
|
||||
lang: options.lang,
|
||||
pages: pageDefinitionFile
|
||||
})
|
||||
.then(function(){
|
||||
console.log('Static files generated\n');
|
||||
})
|
||||
.catch(function(e){
|
||||
console.error(e);
|
||||
console.log('\nStatic files not generated\n');
|
||||
});
|
||||
});
|
||||
|
||||
_cli
|
||||
.command('*')
|
||||
.action(function(c){
|
||||
console.error('Unknown command "' + c + '"');
|
||||
_cli.outputHelp();
|
||||
});
|
||||
|
||||
// run the commander dispatcher
|
||||
_cli.parse(process.argv);
|
||||
|
||||
// default action (no command provided)
|
||||
if (!process.argv.slice(2).length) {
|
||||
_cli.outputHelp();
|
||||
}
|
43
build.xml
43
build.xml
|
@ -1,43 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<project name="HttpErrorPages" default="pages" basedir=".">
|
||||
<!-- AN-contrib !-->
|
||||
<taskdef resource="net/sf/antcontrib/antcontrib.properties"/>
|
||||
|
||||
<target name="css">
|
||||
<!-- Less CSS build (WEB CSS) !-->
|
||||
<echo message="Building LESS Files.." />
|
||||
<exec executable="lessc">
|
||||
<arg line="assets/Layout.less" />
|
||||
<arg line="assets/Layout.css" />
|
||||
<arg line="--clean-css" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<!-- Generate Pages using default config !-->
|
||||
<target name="pages" depends="css">
|
||||
<!-- Generate Pages !-->
|
||||
<exec executable="php">
|
||||
<arg value="generator.php" />
|
||||
</exec>
|
||||
|
||||
<!-- create package !-->
|
||||
<zip destfile="dist/pages.zip" basedir="dist" includes="*.html" />
|
||||
<tar destfile="dist/pages.tar" basedir="dist" includes="*.html" />
|
||||
</target>
|
||||
|
||||
<!-- Generate Docs Pages !-->
|
||||
<target name="docs" depends="css">
|
||||
<!-- Generate Pages !-->
|
||||
<exec executable="php">
|
||||
<arg value="generator.php" />
|
||||
<arg value="docs/config.ini" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
<!-- Full Rebuild !-->
|
||||
<target name="full" depends="css,docs,pages">
|
||||
</target>
|
||||
|
||||
</project>
|
||||
|
10
config-dist.json
Normal file
10
config-dist.json
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
// Output Filename Scheme - eg. HTTP500.html
|
||||
"scheme": "HTTP%code%.html",
|
||||
|
||||
// Page title (HTML not allowed)
|
||||
"pagetitle": "We've got some trouble | %code% - %title%",
|
||||
|
||||
// Footer content (HTML Allowed)
|
||||
"footer": null
|
||||
}
|
10
config.ini
10
config.ini
|
@ -1,10 +0,0 @@
|
|||
[global]
|
||||
|
||||
; Output Filename Scheme - eg. HTTP500.html
|
||||
scheme='HTTP%d.html'
|
||||
|
||||
; Output dir path
|
||||
output_dir="dist/"
|
||||
|
||||
; Footer content (HTML Allowed)
|
||||
footer=""
|
13
config.json
Normal file
13
config.json
Normal file
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
// Output Filename Scheme - eg. HTTP500.html
|
||||
"scheme": "HTTP%code%.html",
|
||||
|
||||
// Page title (HTML not allowed)
|
||||
"pagetitle": "We've got some trouble | %code% - %title%",
|
||||
|
||||
// Footer content (HTML Allowed)
|
||||
"footer": "Tech Contact <a href=\"mailto:info@example.org\">info@example.org</a>",
|
||||
|
||||
// additional vars
|
||||
"myvar" : "Hello World"
|
||||
}
|
21
dist/HTTP400.html
vendored
21
dist/HTTP400.html
vendored
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 400 - Bad Request</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 400 - Bad Request</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Bad Request <small>Error 400</small></h1>
|
||||
<p class="lead">The server cannot process the request due to something that is perceived to be a client error.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Bad Request <small>400</small></h1><p class="lead">The server cannot process the request due to something that is perceived to be a client error.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
21
dist/HTTP401.html
vendored
21
dist/HTTP401.html
vendored
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 401 - Unauthorized</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 401 - Unauthorized</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Unauthorized <small>Error 401</small></h1>
|
||||
<p class="lead">The requested resource requires an authentication.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Unauthorized <small>401</small></h1><p class="lead">The requested resource requires an authentication.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
21
dist/HTTP403.html
vendored
21
dist/HTTP403.html
vendored
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 403 - Access Denied</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 403 - Access Denied</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Access Denied <small>Error 403</small></h1>
|
||||
<p class="lead">The requested resource requires an authentication.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Access Denied <small>403</small></h1><p class="lead">The requested resource requires an authentication.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
21
dist/HTTP404.html
vendored
21
dist/HTTP404.html
vendored
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 404 - Resource not found</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 404 - Resource not found</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Resource not found <small>Error 404</small></h1>
|
||||
<p class="lead">The requested resource could not be found but may be available again in the future.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Resource not found <small>404</small></h1><p class="lead">The requested resource could not be found but may be available again in the future.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
22
dist/HTTP500.html
vendored
22
dist/HTTP500.html
vendored
|
@ -1,23 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 500 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 500 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 500</small></h1>
|
||||
<p class="lead">An unexpected condition was encountered.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>500</small></h1><p class="lead">An unexpected condition was encountered.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
21
dist/HTTP501.html
vendored
21
dist/HTTP501.html
vendored
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 501 - Not Implemented</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 501 - Not Implemented</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Not Implemented <small>Error 501</small></h1>
|
||||
<p class="lead">The Webserver cannot recognize the request method.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Not Implemented <small>501</small></h1><p class="lead">The Webserver cannot recognize the request method.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
22
dist/HTTP502.html
vendored
22
dist/HTTP502.html
vendored
|
@ -1,23 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 502 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 502 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 502</small></h1>
|
||||
<p class="lead">We've got some trouble with our backend upstream cluster.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>502</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
22
dist/HTTP503.html
vendored
22
dist/HTTP503.html
vendored
|
@ -1,23 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 503 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 503 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 503</small></h1>
|
||||
<p class="lead">We've got some trouble with our backend upstream cluster.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>503</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
21
dist/HTTP520.html
vendored
21
dist/HTTP520.html
vendored
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 520 - Origin Error - Unknown Host</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 520 - Origin Error - Unknown Host</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Origin Error - Unknown Host <small>Error 520</small></h1>
|
||||
<p class="lead">The requested hostname is not routed. Use only hostnames to access resources.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Origin Error - Unknown Host <small>520</small></h1><p class="lead">The requested hostname is not routed. Use only hostnames to access resources.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
22
dist/HTTP521.html
vendored
22
dist/HTTP521.html
vendored
|
@ -1,23 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 521 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 521 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 521</small></h1>
|
||||
<p class="lead">We've got some trouble with our backend upstream cluster.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>521</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
22
dist/HTTP533.html
vendored
22
dist/HTTP533.html
vendored
|
@ -1,23 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 533 - Scheduled Maintenance</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 533 - Scheduled Maintenance</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Scheduled Maintenance <small>Error 533</small></h1>
|
||||
<p class="lead">This site is currently down for maintenance.<br />
|
||||
Our service team is working hard to bring it back online soon.</p>
|
||||
</div>
|
||||
<div class="cover"><h1>Scheduled Maintenance <small>533</small></h1><p class="lead">This site is currently down for maintenance.<br />Our service team is working hard to bring it back online soon.</p></div>
|
||||
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
|
1
dist/pages.json
vendored
1
dist/pages.json
vendored
|
@ -1 +0,0 @@
|
|||
{"400":{"title":"Bad Request","message":"The server cannot process the request due to something that is perceived to be a client error."},"401":{"title":"Unauthorized","message":"The requested resource requires an authentication."},"403":{"title":"Access Denied","message":"The requested resource requires an authentication."},"404":{"title":"Resource not found","message":"The requested resource could not be found but may be available again in the future."},"500":{"title":"Webservice currently unavailable","message":"An unexpected condition was encountered.\nOur service team has been dispatched to bring it back online."},"501":{"title":"Not Implemented","message":"The Webserver cannot recognize the request method."},"502":{"title":"Webservice currently unavailable","message":"We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."},"503":{"title":"Webservice currently unavailable","message":"We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."},"520":{"title":"Origin Error - Unknown Host","message":"The requested hostname is not routed. Use only hostnames to access resources."},"521":{"title":"Webservice currently unavailable","message":"We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."},"533":{"title":"Scheduled Maintenance","message":"This site is currently down for maintenance.\nOur service team is working hard to bring it back online soon."}}
|
BIN
dist/pages.tar
vendored
BIN
dist/pages.tar
vendored
Binary file not shown.
BIN
dist/pages.zip
vendored
BIN
dist/pages.zip
vendored
Binary file not shown.
|
@ -1,26 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 400 - Bad Request</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 400 - Bad Request</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Bad Request <small>Error 400</small></h1>
|
||||
<p class="lead">The server cannot process the request due to something that is perceived to be a client error.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Bad Request <small>400</small></h1><p class="lead">The server cannot process the request due to something that is perceived to be a client error.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,26 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 401 - Unauthorized</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 401 - Unauthorized</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Unauthorized <small>Error 401</small></h1>
|
||||
<p class="lead">The requested resource requires an authentication.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Unauthorized <small>401</small></h1><p class="lead">The requested resource requires an authentication.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,26 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 403 - Access Denied</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 403 - Access Denied</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Access Denied <small>Error 403</small></h1>
|
||||
<p class="lead">The requested resource requires an authentication.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Access Denied <small>403</small></h1><p class="lead">The requested resource requires an authentication.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,26 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 404 - Resource not found</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 404 - Resource not found</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Resource not found <small>Error 404</small></h1>
|
||||
<p class="lead">The requested resource could not be found but may be available again in the future.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Resource not found <small>404</small></h1><p class="lead">The requested resource could not be found but may be available again in the future.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,27 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 500 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 500 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 500</small></h1>
|
||||
<p class="lead">An unexpected condition was encountered.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>500</small></h1><p class="lead">An unexpected condition was encountered.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,26 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 501 - Not Implemented</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 501 - Not Implemented</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Not Implemented <small>Error 501</small></h1>
|
||||
<p class="lead">The Webserver cannot recognize the request method.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Not Implemented <small>501</small></h1><p class="lead">The Webserver cannot recognize the request method.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,27 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 502 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 502 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 502</small></h1>
|
||||
<p class="lead">We've got some trouble with our backend upstream cluster.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>502</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,27 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 503 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 503 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 503</small></h1>
|
||||
<p class="lead">We've got some trouble with our backend upstream cluster.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>503</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,22 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | {{code}} - {{title}}</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 504 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>{{title}} <small>Error {{code}}</small></h1>
|
||||
<p class="lead">{{message}}</p>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>502</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
|
@ -1,26 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 520 - Origin Error - Unknown Host</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 520 - Origin Error - Unknown Host</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Origin Error - Unknown Host <small>Error 520</small></h1>
|
||||
<p class="lead">The requested hostname is not routed. Use only hostnames to access resources.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Origin Error - Unknown Host <small>520</small></h1><p class="lead">The requested hostname is not routed. Use only hostnames to access resources.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,27 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 521 - Webservice currently unavailable</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 521 - Webservice currently unavailable</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Webservice currently unavailable <small>Error 521</small></h1>
|
||||
<p class="lead">We've got some trouble with our backend upstream cluster.<br />
|
||||
Our service team has been dispatched to bring it back online.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Webservice currently unavailable <small>521</small></h1><p class="lead">We've got some trouble with our backend upstream cluster.<br />Our service team has been dispatched to bring it back online.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,27 +1,13 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | 533 - Scheduled Maintenance</title>
|
||||
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 75pt rgba(0,0,0,.8);box-shadow:inset 0 0 75pt rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
<!-- Simple HttpErrorPages | MIT License | https://github.com/HttpErrorPages -->
|
||||
<meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>We've got some trouble | 533 - Scheduled Maintenance</title>
|
||||
<style type="text/css">/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*! Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages */body,html{width:100%;height:100%;background-color:#21232a}body{color:#fff;text-align:center;text-shadow:0 2px 4px rgba(0,0,0,.5);padding:0;min-height:100%;-webkit-box-shadow:inset 0 0 100px rgba(0,0,0,.8);box-shadow:inset 0 0 100px rgba(0,0,0,.8);display:table;font-family:"Open Sans",Arial,sans-serif}h1{font-family:inherit;font-weight:500;line-height:1.1;color:inherit;font-size:36px}h1 small{font-size:68%;font-weight:400;line-height:1;color:#777}a{text-decoration:none;color:#fff;font-size:inherit;border-bottom:dotted 1px #707070}.lead{color:silver;font-size:21px;line-height:1.4}.cover{display:table-cell;vertical-align:middle;padding:0 20px}footer{position:fixed;width:100%;height:40px;left:0;bottom:0;color:#a0a0a0;font-size:14px}</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1>Scheduled Maintenance <small>Error 533</small></h1>
|
||||
<p class="lead">This site is currently down for maintenance.<br />
|
||||
Our service team is working hard to bring it back online soon.</p>
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
<p>Technical Contact: <a href=mailto:x@example.com>x@example.com</a></p>
|
||||
</footer>
|
||||
|
||||
<div class="cover"><h1>Scheduled Maintenance <small>533</small></h1><p class="lead">This site is currently down for maintenance.<br />Our service team is working hard to bring it back online soon.</p></div>
|
||||
<footer><p>Technical Contact: <a href="mailto:x@example.com">x@example.com</a></p></footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
[global]
|
||||
|
||||
; Output Filename Scheme - eg. HTTP500.html
|
||||
scheme='HTTP%d.html'
|
||||
|
||||
; Output dir path
|
||||
output_dir="docs/"
|
||||
|
||||
; Footer content (HTML Allowed)
|
||||
footer = "Technical Contact: <a href="mailto:x@example.com">x@example.com</a>"
|
4
docs/config.json
Normal file
4
docs/config.json
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"scheme": "HTTP%code%.html",
|
||||
"footer": "Technical Contact: <a href=\"mailto:x@example.com\">x@example.com</a>"
|
||||
}
|
71
examples/express.js
Normal file
71
examples/express.js
Normal file
|
@ -0,0 +1,71 @@
|
|||
const _express = require('express');
|
||||
const _webapp = _express();
|
||||
|
||||
// use require('http-error-pages') for regular apps!
|
||||
const _httpErrorPages = require('../lib/main');
|
||||
|
||||
async function bootstrap(){
|
||||
// demo handler
|
||||
_webapp.get('/', function(req, res){
|
||||
res.type('.txt').send('HttpErrorPages Demo');
|
||||
});
|
||||
|
||||
// throw an 403 error
|
||||
_webapp.get('/my403error', function(req, res, next){
|
||||
const myError = new Error();
|
||||
myError.status = 403;
|
||||
next(myError);
|
||||
});
|
||||
|
||||
// throw an unknown error
|
||||
_webapp.get('/unknown', function(req, res, next){
|
||||
const myError = new Error();
|
||||
myError.status = 523;
|
||||
next(myError);
|
||||
});
|
||||
|
||||
// throw an internal error
|
||||
_webapp.get('/500', function(req, res){
|
||||
throw new Error('Server Error');
|
||||
});
|
||||
|
||||
// custom errorhandling middleware
|
||||
// use this pattern in production to log errors!
|
||||
_webapp.use(function(err, req, res, next){
|
||||
console.log(`[custom logging middleware] ${err.message}`);
|
||||
// forward error
|
||||
next(err);
|
||||
});
|
||||
|
||||
// use http error pages handler (final statement!)
|
||||
// because of the asynchronous file-loaders, wait until it has been executed
|
||||
await _httpErrorPages.express(_webapp, {
|
||||
lang: 'en_US',
|
||||
payload: {
|
||||
footer: 'Hello <strong>World</strong>',
|
||||
pagetitle: 'we are sorry - an internal error encountered',
|
||||
},
|
||||
filter: function(data, req, res){
|
||||
// remove footer
|
||||
//data.footer = null;
|
||||
return data;
|
||||
},
|
||||
onError: function(data){
|
||||
// for debugging purpose only!!
|
||||
// use custom middleware for errorlogging!!
|
||||
console.log(`[expressjs] ERROR: ${data.title}\n${data.error.stack}`)
|
||||
}
|
||||
});
|
||||
|
||||
// start service
|
||||
_webapp.listen(8888);
|
||||
}
|
||||
|
||||
// invoke bootstrap operation
|
||||
bootstrap()
|
||||
.then(function(){
|
||||
console.log('Running Demo on Port 8888');
|
||||
})
|
||||
.catch(function(e){
|
||||
console.error(e);
|
||||
});
|
80
examples/koa.js
Normal file
80
examples/koa.js
Normal file
|
@ -0,0 +1,80 @@
|
|||
const _koa = require('koa');
|
||||
const _webapp = new _koa();
|
||||
|
||||
// use require('http-error-pages') for regular apps!
|
||||
const _httpErrorPages = require('../lib/main');
|
||||
|
||||
async function bootstrap(){
|
||||
|
||||
// use http error pages handler (INITIAL statement!)
|
||||
// because of the asynchronous file-loaders, wait until it has been executed - it returns an async handler
|
||||
_webapp.use(await _httpErrorPages.koa({
|
||||
lang: 'en_US',
|
||||
payload: {
|
||||
footer: 'Hello <strong>World</strong>',
|
||||
pagetitle: 'we are sorry - an internal error encountered',
|
||||
},
|
||||
filter: function(data, ctx){
|
||||
// remove footer
|
||||
//data.footer = null;
|
||||
return data;
|
||||
},
|
||||
onError: function(data){
|
||||
// for debugging purpose only!!
|
||||
// use custom middleware for errorlogging!!
|
||||
console.log(`[koa] ERROR: ${data.title}\n${data.error.stack}`)
|
||||
}
|
||||
}));
|
||||
|
||||
// demo handler
|
||||
_webapp.use(async (ctx, next) => {
|
||||
if (ctx.path == '/'){
|
||||
ctx.type = 'text';
|
||||
ctx.body = 'HttpErrorPages Demo';
|
||||
}else{
|
||||
return next();
|
||||
}
|
||||
});
|
||||
|
||||
// throw an 403 error
|
||||
_webapp.use(async (ctx, next) => {
|
||||
if (ctx.path == '/my403error'){
|
||||
ctx.throw(403);
|
||||
}else{
|
||||
return next();
|
||||
}
|
||||
});
|
||||
|
||||
// throw an 533 error with status 500
|
||||
_webapp.use(async (ctx, next) => {
|
||||
if (ctx.path == '/x533'){
|
||||
const e = new Error("custom");
|
||||
e.errorpage = '533';
|
||||
e.status = 500;
|
||||
throw e;
|
||||
}else{
|
||||
return next();
|
||||
}
|
||||
});
|
||||
|
||||
// throw an internal error
|
||||
_webapp.use(async (ctx, next) => {
|
||||
if (ctx.path == '/500'){
|
||||
throw new Error('Server Error');
|
||||
}else{
|
||||
return next();
|
||||
}
|
||||
});
|
||||
|
||||
// start service
|
||||
_webapp.listen(8888);
|
||||
}
|
||||
|
||||
// invoke bootstrap operation
|
||||
bootstrap()
|
||||
.then(function(){
|
||||
console.log('Running Demo on Port 8888');
|
||||
})
|
||||
.catch(function(e){
|
||||
console.error(e);
|
||||
});
|
|
@ -1,22 +0,0 @@
|
|||
var _express = require('express');
|
||||
var _webapp = _express();
|
||||
var _httpErrorPages = require('./lib/error-handler');
|
||||
|
||||
// demo handler
|
||||
_webapp.get('/', function(req, res){
|
||||
res.type('.txt').send('HttpErrorPages Demo');
|
||||
});
|
||||
|
||||
// throw an 403 error
|
||||
_webapp.get('/my403error', function(req, res, next){
|
||||
var myError = new Error();
|
||||
myError.status = 403;
|
||||
next(myError);
|
||||
});
|
||||
|
||||
// use http error pages handler (final statement!)
|
||||
_httpErrorPages(_webapp);
|
||||
|
||||
// start service
|
||||
_webapp.listen(8888);
|
||||
console.log('Running Demo on Port 8888');
|
|
@ -1,64 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* HttpErrorPages HTML Generator
|
||||
*/
|
||||
|
||||
// default config file
|
||||
$configFilename = 'config.ini';
|
||||
|
||||
// config file specified ?
|
||||
if (isset($argv[1])){
|
||||
if (is_file($argv[1])){
|
||||
echo 'Using Config File "', $argv[1], '"', PHP_EOL;
|
||||
$configFilename = $argv[1];
|
||||
}else{
|
||||
echo 'Error: Config File "', $argv[1], '" not found - Using default one', PHP_EOL;
|
||||
}
|
||||
}else{
|
||||
echo 'Using Default Config File "', $configFilename, '"', PHP_EOL;
|
||||
}
|
||||
|
||||
// load config
|
||||
$config = parse_ini_file($configFilename, false);
|
||||
|
||||
// load pages
|
||||
$pages = require('pages.php');
|
||||
|
||||
// store pages as json data
|
||||
file_put_contents('dist/pages.json', json_encode($pages));
|
||||
|
||||
// load inline css
|
||||
$css = trim(file_get_contents('assets/Layout.css'));
|
||||
|
||||
// js template page
|
||||
$pages['{{code}}'] = array(
|
||||
'title' => '{{title}}',
|
||||
'message' => '{{message}}',
|
||||
'footer' => '{{footer}}'
|
||||
);
|
||||
|
||||
// generate each error page
|
||||
foreach ($pages as $code => $page){
|
||||
echo 'Generating Page ', $page['title'], ' (', $code, ')..', PHP_EOL;
|
||||
|
||||
// assign variables
|
||||
$v_code = $code;
|
||||
$v_title = nl2br(htmlspecialchars($page['title']));
|
||||
$v_message = nl2br(htmlspecialchars($page['message']));
|
||||
$v_footer = (isset($config['footer']) ? $config['footer'] : '');
|
||||
|
||||
// render template
|
||||
ob_start();
|
||||
require('template.phtml');
|
||||
$errorpage = ob_get_clean();
|
||||
|
||||
// generate output filename
|
||||
$filename = sprintf($config['scheme'], $v_code);
|
||||
|
||||
// store template
|
||||
if (is_dir($config['output_dir'])){
|
||||
file_put_contents($config['output_dir'] . $filename, $errorpage);
|
||||
}else{
|
||||
echo 'Error: Output dir "', $config['output_dir'], '" not found', PHP_EOL;
|
||||
}
|
||||
}
|
19
gulpfile.js
Normal file
19
gulpfile.js
Normal file
|
@ -0,0 +1,19 @@
|
|||
const _gulp = require('gulp');
|
||||
const _sass = require('gulp-sass')(require('sass'));
|
||||
const _prettyError = require('gulp-prettyerror');
|
||||
const _cleanCSS = require('gulp-clean-css');
|
||||
const _concat = require('gulp-concat');
|
||||
|
||||
_gulp.task('sass', function (){
|
||||
return _gulp.src('./assets/layout.scss')
|
||||
.pipe(_prettyError())
|
||||
.pipe(_sass())
|
||||
|
||||
.pipe(_cleanCSS({compatibility: 'ie10'}))
|
||||
.pipe(_concat('layout.css'))
|
||||
|
||||
.pipe(_gulp.dest('./assets'));
|
||||
});
|
||||
|
||||
_gulp.task('default', _gulp.series(['sass']));
|
||||
|
3
http-error-pages
Normal file
3
http-error-pages
Normal file
|
@ -0,0 +1,3 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
node bin/generator.js $@
|
75
i18n/pages-en_US.json
Normal file
75
i18n/pages-en_US.json
Normal file
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
// STANDARD ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
"400": {
|
||||
"title": "Bad Request",
|
||||
"message": "The server cannot process the request due to something that is perceived to be a client error."
|
||||
},
|
||||
"401": {
|
||||
"title": "Unauthorized",
|
||||
"message": "The requested resource requires an authentication."
|
||||
},
|
||||
|
||||
"403": {
|
||||
"title": "Access Denied",
|
||||
"message": "The requested resource requires an authentication."
|
||||
},
|
||||
|
||||
// http 404 not found
|
||||
"404": {
|
||||
"title": "Resource not found",
|
||||
"message": "The requested resource could not be found but may be available again in the future."
|
||||
},
|
||||
|
||||
// internal server error
|
||||
"500": {
|
||||
"title": "Webservice currently unavailable",
|
||||
"message": "An unexpected condition was encountered.\nOur service team has been dispatched to bring it back online."
|
||||
},
|
||||
|
||||
// unknown http method
|
||||
"501": {
|
||||
"title": "Not Implemented",
|
||||
"message": "The Webserver cannot recognize the request method."
|
||||
},
|
||||
|
||||
// http proxy forward error
|
||||
"502": {
|
||||
"title": "Webservice currently unavailable",
|
||||
"message": "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
},
|
||||
|
||||
// webserver service error
|
||||
"503": {
|
||||
"title": "Webservice currently unavailable",
|
||||
"message": "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
},
|
||||
|
||||
// http proxy time out error
|
||||
"504": {
|
||||
"title": "Webservice currently unavailable",
|
||||
"message": "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
},
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "Origin Error - Unknown Host",
|
||||
"message": "The requested hostname is not routed. Use only hostnames to access resources."
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Webservice currently unavailable",
|
||||
"message": "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
},
|
||||
|
||||
// maintenance
|
||||
"533": {
|
||||
"title": "Scheduled Maintenance",
|
||||
"message": "This site is currently down for maintenance.\nOur service team is working hard to bring it back online soon."
|
||||
}
|
||||
}
|
83
i18n/pages-es_VE.json
Normal file
83
i18n/pages-es_VE.json
Normal file
|
@ -0,0 +1,83 @@
|
|||
{
|
||||
// STANDARD ERROR CODES
|
||||
// https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
|
||||
// =======================================================
|
||||
|
||||
// http 400 Bad Request
|
||||
"400": {
|
||||
"title": "Solicitud incorrecta",
|
||||
"message": "El servidor no puede procesar la solicitud debido a un error en la petición del cliente, por favor <b>modifique su petición</b> e intente de nuevo."
|
||||
},
|
||||
|
||||
// http 401 Unauthorized
|
||||
"401": {
|
||||
"title": "No autorizado",
|
||||
"message": "El recurso solicitado requiere de una autorización."
|
||||
},
|
||||
|
||||
// http 403 Forbidden
|
||||
"403": {
|
||||
"title": "Acceso denegado",
|
||||
"message": "El recurso está prohibido, por favor NO reintente su solicitud."
|
||||
},
|
||||
|
||||
// http 404 Not Found
|
||||
"404": {
|
||||
"title": "Recurso no encontrado",
|
||||
"message": "El recurso solicitado no se pudo encontrar, pero podría estar disponible a futuro."
|
||||
},
|
||||
|
||||
// http 500 Internal Server Error
|
||||
"500": {
|
||||
"title": "Hemos sufrido un error interno",
|
||||
"message": "Eso es lo que sabemos, ya un equipo se apresta a localizar el fallo en nuestro servidor web."
|
||||
},
|
||||
|
||||
// http 501 Not Implemented
|
||||
"501": {
|
||||
"title": "No implementado",
|
||||
"message": "El servidor web no puede reconocer el método de solicitud."
|
||||
},
|
||||
|
||||
// http 502 Bad Gateway
|
||||
"502": {
|
||||
"title": "Servicio web proxy actualmente no disponible",
|
||||
"message": "Tenemos algunos problemas con nuestro racimo. Nuestro equipo de servicio fue enviado para restablecerlo nuevamente en línea."
|
||||
},
|
||||
|
||||
// http 503 Service Unavailable
|
||||
"503": {
|
||||
"title": "Servicio web actualmente no disponible",
|
||||
"message": "Se encontró una condición inesperada. Nuestro equipo de servicio está abocado para colocarlo nuevamente en servicio."
|
||||
},
|
||||
|
||||
// http 504 Gateway Timeout
|
||||
"504": {
|
||||
"title": "Servicio web proxy actualmente no disponible",
|
||||
"message": "Tenemos algunos problemas con nuestro racimo. Nuestro equipo de servicio fue enviado para restablecerlo nuevamente en línea."
|
||||
},
|
||||
|
||||
//https://tools.ietf.org/html/rfc6585#section-6
|
||||
// http 511 Network Authentication Required (offer a URL for login)
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "Error de origen: anfitrión desconocido",
|
||||
"message": "El nombre de anfitrión solicitado no se encontró en ruta. Utilice solo nombres de anfitrión para acceder a los recursos."
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Servicio web no disponible por ahora",
|
||||
"message": "Tenemos algunos problemas con nuestro servicio, un equipo ya está trabajando para colocarlo de nuevo en línea."
|
||||
},
|
||||
|
||||
// maintenance
|
||||
"533": {
|
||||
"title": "Mantenimiento progamado",
|
||||
"message": "Nuestro sitio está en mantenimiento y trabajamos para que muy pronto estaremos en línea de nuevo, agradecemos paciencia."
|
||||
}
|
||||
}
|
75
i18n/pages-fr_FR.json
Normal file
75
i18n/pages-fr_FR.json
Normal file
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
// STANDARD ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
"400": {
|
||||
"title": "Bad Request",
|
||||
"message": "Le serveur ne peut pas traiter la requête en raison d'une erreur perçue comme étant une erreur du client."
|
||||
},
|
||||
"401": {
|
||||
"title": "Non autorisé",
|
||||
"message": "La ressource demandée nécessite une authentification."
|
||||
},
|
||||
|
||||
"403": {
|
||||
"title": "Accès refusé",
|
||||
"message": "La ressource demandée nécessite une authentification."
|
||||
},
|
||||
|
||||
// http 404 not found
|
||||
"404": {
|
||||
"title": "Ressource non trouvée",
|
||||
"message": "La ressource demandée n'a pu être trouvée, mais elle pourrait être de nouveau disponible à l'avenir."
|
||||
},
|
||||
|
||||
// internal server error
|
||||
"500": {
|
||||
"title": "Service Web actuellement indisponible",
|
||||
"message": "Une condition inattendue a été rencontrée. Notre équipe de service a été dépêchée pour la remettre en service."
|
||||
},
|
||||
|
||||
// unknown http method
|
||||
"501": {
|
||||
"title": "Non implémenté",
|
||||
"message": "Le serveur Web ne peut pas reconnaître la méthode de requête."
|
||||
},
|
||||
|
||||
// http proxy forward error
|
||||
"502": {
|
||||
"title": "Service Web actuellement indisponible",
|
||||
"message": "Nous avons quelques problèmes avec notre cluster en amont. Notre équipe de service a été dépêchée pour le remettre en ligne."
|
||||
},
|
||||
|
||||
// webserver service error
|
||||
"503": {
|
||||
"title": "Service Web actuellement indisponible",
|
||||
"message": "Nous avons quelques problèmes avec notre cluster en amont. Notre équipe de service a été dépêchée pour le remettre en ligne."
|
||||
},
|
||||
|
||||
// http proxy timeout error
|
||||
"504": {
|
||||
"title": "Service Web actuellement indisponible",
|
||||
"message": "Nous avons quelques problèmes avec notre cluster en amont. Notre équipe de service a été dépêchée pour le remettre en ligne."
|
||||
},
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "Origin Error - Unknown Host",
|
||||
"message": "Le nom d'hôte demandé n'est pas routé. Utilisez uniquement les noms d'hôtes pour accéder aux ressources."
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Service Web actuellement indisponible",
|
||||
"message": "Nous avons quelques problèmes avec notre cluster en amont. Notre équipe de service a été dépêchée pour le remettre en ligne."
|
||||
},
|
||||
|
||||
// maintenance
|
||||
"533": {
|
||||
"title": "Maintenance Programmée",
|
||||
"message": "Ce site est actuellement en maintenance. Notre équipe de service travaille dur pour le remettre en ligne prochainement."
|
||||
}
|
||||
}
|
79
i18n/pages-it_IT.json
Normal file
79
i18n/pages-it_IT.json
Normal file
|
@ -0,0 +1,79 @@
|
|||
{
|
||||
// STANDARD ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
//http 400 bad request
|
||||
"400": {
|
||||
"title": "Richiesta non valida",
|
||||
"message": "Il server non può elaborare la richiesta a causa di qualcosa che è percepito come un errore del client."
|
||||
},
|
||||
|
||||
//http 401 unauthorized
|
||||
"401": {
|
||||
"title": "Accesso negato",
|
||||
"message": "La risorsa richiesta richiede un'autenticazione."
|
||||
},
|
||||
|
||||
// http 403 access denied
|
||||
"403": {
|
||||
"title": "Operazione non consentita",
|
||||
"message": "La risorsa richiesta richiede un'autenticazione."
|
||||
},
|
||||
|
||||
// http 404 not found
|
||||
"404": {
|
||||
"title": "Risorsa non trovata",
|
||||
"message": "La risorsa richiesta non è stata trovata ma potrebbe essere nuovamente disponibile in futuro."
|
||||
},
|
||||
|
||||
// internal server error
|
||||
"500": {
|
||||
"title": "Web Server attualmente non disponibile",
|
||||
"message": "Si è verificata una condizione imprevista.\nIl nostro team di assistenza è stato inviato per riportarlo online."
|
||||
},
|
||||
|
||||
// unknown http method
|
||||
"501": {
|
||||
"title": "Non implementato",
|
||||
"message": "Il server Web non è in grado di riconoscere il metodo della richiesta."
|
||||
},
|
||||
|
||||
// webserver - bad gateway
|
||||
"502": {
|
||||
"title": "Web Server attualmente non disponibile - Gateway non valido",
|
||||
"message": "Abbiamo qualche problema con il nostro cluster back-end.\nIl nostro team di assistenza è stato inviato per riportarlo online."
|
||||
},
|
||||
|
||||
// webserver - service unavailable
|
||||
"503": {
|
||||
"title": "Web Server attualmente non disponibile",
|
||||
"message": "Abbiamo qualche problema con il nostro cluster back-end.\nIl nostro team di assistenza è stato inviato per riportarlo online."
|
||||
},
|
||||
|
||||
// webserver - gateway timeout
|
||||
"504": {
|
||||
"title": "Web Server attualmente non disponibile - Timeout del gateway",
|
||||
"message": "Abbiamo qualche problema con il nostro cluster back-end.\nIl nostro team di assistenza è stato inviato per riportarlo online."
|
||||
},
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "Errore di origine - Host sconosciuto",
|
||||
"message": "Il nome host richiesto non viene instradato. Utilizzare solo nomi host per accedere alle risorse."
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Web Server attualmente non disponibile",
|
||||
"message": "Abbiamo qualche problema con il nostro cluster back-end.\nIl nostro team di assistenza è stato inviato per riportarlo online."
|
||||
},
|
||||
|
||||
// maintenance
|
||||
"533": {
|
||||
"title": "Manutenzione programmata",
|
||||
"message": "Questo sito è attualmente fuori servizio per manutenzione.\nIl nostro team di assistenza sta lavorando sodo per riportarlo presto online."
|
||||
}
|
||||
}
|
86
i18n/pages-pl-PL.json
Normal file
86
i18n/pages-pl-PL.json
Normal file
|
@ -0,0 +1,86 @@
|
|||
{
|
||||
|
||||
"400": {
|
||||
"title": "Błędne zapytanie",
|
||||
"message": "Serwer nie mógł przetworzyć żądania."
|
||||
},
|
||||
"401": {
|
||||
"title": "Brak uwierzytelnienia",
|
||||
"message": "Żądany zasób wymaga uwierzytelnienia."
|
||||
},
|
||||
|
||||
"403": {
|
||||
"title": "Brak dostępu",
|
||||
"message": "Żądany zasób wymaga uwierzytelnienia."
|
||||
},
|
||||
|
||||
"404": {
|
||||
"title": "Nie znaleziono",
|
||||
"message": "Nie można znaleźć żądanego zasobu, ale może on być ponownie dostępny w przyszłości."
|
||||
},
|
||||
|
||||
"405": {
|
||||
"title": "Nie dozwolona metoda",
|
||||
"message": "Witryna nie bługuje wybranej metody."
|
||||
},
|
||||
|
||||
"408": {
|
||||
"title": "Upłynął limit czasu żadania",
|
||||
"message": "Witryna przekroczyła limit czasu oczekiwania na żądanie przeglądarki."
|
||||
},
|
||||
|
||||
"410": {
|
||||
"title": "Nie znaleziono",
|
||||
"message": "Nie można znaleźć żądanego zasobu, ale był on kiedyś dostępny."
|
||||
},
|
||||
|
||||
"429": {
|
||||
"title": "Za dużo zapytań",
|
||||
"message": "Wysłano zbyt wiele zapytań w zbyt krótkim czasie."
|
||||
},
|
||||
|
||||
"499": {
|
||||
"title": "Żądanie zamknięcia",
|
||||
"message": "Przeglądarka wsyłała żądanie przerwania"
|
||||
},
|
||||
|
||||
"500": {
|
||||
"title": "Witryna jest aktualnie niedostępna",
|
||||
"message": "Wystąpił nieoczekiwany błąd.\nJuż pracujemy nad przywróceniem witryny."
|
||||
},
|
||||
|
||||
"501": {
|
||||
"title": "Brak obsługi",
|
||||
"message": "Witryna nie jest w stanie obsłużyć takiego zapytania."
|
||||
},
|
||||
|
||||
"502": {
|
||||
"title": "Witryna jest aktualnie niedostępna",
|
||||
"message": "Wystąpił nieoczekiwany błąd.\nJuż pracujemy nad przywróceniem witryny."
|
||||
},
|
||||
|
||||
"503": {
|
||||
"title": "Witryna jest aktualnie niedostępna",
|
||||
"message": "Wystąpił nieoczekiwany błąd.\nJuż pracujemy nad przywróceniem witryny."
|
||||
},
|
||||
|
||||
"504": {
|
||||
"title": "Witryna jest aktualnie niedostępna",
|
||||
"message": "Wystąpił nieoczekiwany błąd.\nJuż pracujemy nad przywróceniem witryny."
|
||||
},
|
||||
|
||||
"520": {
|
||||
"title": "Błąd — nieznany host",
|
||||
"message": "Żądana nazwa hosta nie jest routowana. Używaj tylko nazw hostów, aby uzyskać dostęp do zasobów."
|
||||
},
|
||||
|
||||
"521": {
|
||||
"title": "Witryna jest aktualnie niedostępna",
|
||||
"message": "Wystąpił nieoczekiwany błąd.\nJuż pracujemy nad przywróceniem witryny."
|
||||
},
|
||||
|
||||
"533": {
|
||||
"title": "Zaplanowana konserwacja",
|
||||
"message": "Witryna jest obecnie niedostępna z powodu konserwacji.\nPracujemy na tym, aby wkrótce przywrócić ją do trybu online."
|
||||
}
|
||||
}
|
72
i18n/pages-pt_BR.json
Normal file
72
i18n/pages-pt_BR.json
Normal file
|
@ -0,0 +1,72 @@
|
|||
{
|
||||
// STANDARD ERROR CODES
|
||||
// =======================================================
|
||||
"400": {
|
||||
"title": "Requisição inválida",
|
||||
"message": "Oops! Não conseguimos processar a requisição."
|
||||
},
|
||||
"401": {
|
||||
"title": "Não Autorizado",
|
||||
"message": "Oops! O recurso requer uma autenticação."
|
||||
},
|
||||
"403": {
|
||||
"title": "Acesso Negado",
|
||||
"message": "Oops! O recurso requer uma autenticação."
|
||||
},
|
||||
|
||||
// http 404 not found
|
||||
"404": {
|
||||
"title": "Página Não Encontrada",
|
||||
"message": "Oops! Não conseguimos encontrar a página que você estava procurando."
|
||||
},
|
||||
|
||||
// internal server error
|
||||
"500": {
|
||||
"title": "Webservice Atualmente Não Disponível",
|
||||
"message": "Uma condição inesperada foi encontrada.\nNosso time de serviços está trabalhando para deixar isso online novamente."
|
||||
},
|
||||
|
||||
// unknown http method
|
||||
"501": {
|
||||
"title": "Não implementado",
|
||||
"message": "Oops! O Webserver não conseguiu reconhecer o método solicitado"
|
||||
},
|
||||
|
||||
// http proxy forward error
|
||||
"502": {
|
||||
"title": "Webservice atualmente indisponível",
|
||||
"message": "Nós tivemos alguns problema com o nosso backend. Nosso time de serviços está trabalhando para deixar isso online novamente."
|
||||
},
|
||||
|
||||
// webserver service error
|
||||
"503": {
|
||||
"title": "Webservice atualmente indisponível",
|
||||
"message": "Nós tivemos alguns problema com o nosso backend. Nosso time de serviços está trabalhando para deixar isso online novamente."
|
||||
},
|
||||
|
||||
// http proxy timeout error
|
||||
"504": {
|
||||
"title": "Webservice atualmente indisponível",
|
||||
"message": "Nós tivemos alguns problema com o nosso backend. Nosso time de serviços está trabalhando para deixar isso online novamente."
|
||||
},
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "Origin Error - Host Desconhecido",
|
||||
"message": "O hostname requisitado não é roteado. Use apenas hostnames para acessar recursos."
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Webservice atualmente indisponível",
|
||||
"message": "Nós tivemos alguns problema com o nosso backend. Nosso time de serviços está trabalhando para deixar isso online novamente."
|
||||
},
|
||||
|
||||
// maintenance
|
||||
"533": {
|
||||
"title": "Estamos em manutenção",
|
||||
"message": "O site está offline para manutenção.\nNosso time está trabalhando para reestabelecer o serviço em breve."
|
||||
}
|
||||
}
|
75
i18n/pages-zh_CN.json
Normal file
75
i18n/pages-zh_CN.json
Normal file
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
// STANDARD ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
"400": {
|
||||
"title": "无效的请求",
|
||||
"message": "由于明显的客户端错误,服务器不能或不会处理该请求。"
|
||||
},
|
||||
"401": {
|
||||
"title": "未认证",
|
||||
"message": "所请求的资源需要认证。"
|
||||
},
|
||||
|
||||
"403": {
|
||||
"title": "访问请求被拒绝",
|
||||
"message": "所请求的资源需要认证"
|
||||
},
|
||||
|
||||
// http 404 not found
|
||||
"404": {
|
||||
"title": "资源未找到",
|
||||
"message": "找不到所请求的资源。"
|
||||
},
|
||||
|
||||
// internal server error
|
||||
"500": {
|
||||
"title": "Webservice目前不可用",
|
||||
"message": "发生了未知的问题。\n我们的技术支持团队正在努力修复中。"
|
||||
},
|
||||
|
||||
// unknown http method
|
||||
"501": {
|
||||
"title": "方法未实现",
|
||||
"message": "服务器不支持当前请求所需要的某个功能。"
|
||||
},
|
||||
|
||||
// http proxy forward error
|
||||
"502": {
|
||||
"title": "Webservice目前不可用",
|
||||
"message": "我们的后端上游服务器出现了问题。\n技术支持团队正在努力修复中。"
|
||||
},
|
||||
|
||||
// webserver service error
|
||||
"503": {
|
||||
"title": "Webservice目前不可用",
|
||||
"message": "我们的后端上游服务器出现了问题。\n技术支持团队正在努力修复中。"
|
||||
},
|
||||
|
||||
// http proxy timeout error
|
||||
"504": {
|
||||
"title": "Webservice目前不可用",
|
||||
"message": "我们的后端上游服务器出现了问题。\n技术支持团队正在努力修复中。"
|
||||
},
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
// webserver origin error
|
||||
"520": {
|
||||
"title": "未知的主机",
|
||||
"message": "没有到达所请求的主机的路由。"
|
||||
},
|
||||
|
||||
// webserver down error
|
||||
"521": {
|
||||
"title": "Webservice暂时不可用",
|
||||
"message": "我们的后端上游服务器出现了问题。\n技术支持团队正在努力修复中。"
|
||||
},
|
||||
|
||||
// maintenance
|
||||
"533": {
|
||||
"title": "日常维护",
|
||||
"message": "本站暂时因维护原因而下线。\n我们将会尽快恢复。"
|
||||
}
|
||||
}
|
4
lib/README.md
Normal file
4
lib/README.md
Normal file
|
@ -0,0 +1,4 @@
|
|||
Express.js Error Pages
|
||||
============================
|
||||
|
||||
The following files are used as error handler for express.js
|
|
@ -1,47 +1,36 @@
|
|||
var _pages = require('../dist/pages.json');
|
||||
var _renderer = require('./page-renderer');
|
||||
|
||||
// multi-type support
|
||||
// @see https://github.com/expressjs/express/blob/master/examples/error-pages/index.js
|
||||
function dispatchRequest(page, httpStatusCode, req, res){
|
||||
// generic error dispatching
|
||||
module.exports = function dispatch(opt, resources, page, httpStatusCode, err){
|
||||
// page available ?
|
||||
if (!_pages[page]){
|
||||
if (!resources.pages[page]){
|
||||
// use "internal server error" as default
|
||||
page = '500';
|
||||
httpStatusCode = null;
|
||||
}
|
||||
|
||||
// set http status code
|
||||
res.status(httpStatusCode || 500);
|
||||
|
||||
// extract page date
|
||||
var pageData = _pages[page];
|
||||
// page found ? fallback in case http500 template not exists
|
||||
const pageData = resources.pages[page] || {
|
||||
title: 'Internal Server Error',
|
||||
message: 'Additionally, FileNotFound was encountered while trying to use an ErrorDocument to handle the request'
|
||||
};
|
||||
|
||||
// multiple response formats
|
||||
res.format({
|
||||
// standard http-error-pages
|
||||
html: function(){
|
||||
res.type('.html');
|
||||
res.send(_renderer({
|
||||
code: httpStatusCode,
|
||||
title: pageData.title,
|
||||
message: pageData.message
|
||||
}))
|
||||
},
|
||||
// create template variables
|
||||
const templateVars = Object.assign({}, {
|
||||
title: pageData.title,
|
||||
message: pageData.message,
|
||||
code: httpStatusCode || 500,
|
||||
language: opt.lang.substr(0, 2),
|
||||
error: err
|
||||
}, opt.payload);
|
||||
|
||||
// json
|
||||
json: function(){
|
||||
res.json({
|
||||
error: pageData.title + ' - ' + pageData.message
|
||||
})
|
||||
},
|
||||
// debug error handler set ?
|
||||
if (opt.onError){
|
||||
opt.onError(templateVars);
|
||||
}
|
||||
|
||||
// text response
|
||||
default: function(){
|
||||
// plain text
|
||||
res.type('.txt').send(pageData.title + ' - ' + pageData.message);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = dispatchRequest;
|
||||
return {
|
||||
pageData: pageData,
|
||||
templateVars: templateVars
|
||||
};
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
var _dispatcher = require('./dispatcher');
|
||||
|
||||
// http404 handler
|
||||
function notfoundHandler(req, res){
|
||||
_dispatcher('404', 404, req, res);
|
||||
}
|
||||
|
||||
// default error handler
|
||||
function errorHandler(err, req, res, next){
|
||||
// status code given ?
|
||||
if (err.status){
|
||||
// custom errorpage set ?
|
||||
_dispatcher(err.errorpage || err.status, err.status, req, res);
|
||||
|
||||
// use default http500 page
|
||||
}else{
|
||||
_dispatcher('500', 500, req, res);
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = function(router){
|
||||
// 404
|
||||
router.use(notfoundHandler);
|
||||
|
||||
// internal errors (all)
|
||||
router.use(errorHandler);
|
||||
};
|
72
lib/express.js
Normal file
72
lib/express.js
Normal file
|
@ -0,0 +1,72 @@
|
|||
const _render = require('./page-renderer');
|
||||
const _parseOptions = require('./options');
|
||||
const _getResources = require('./resources');
|
||||
const _dispatch = require('./dispatcher');
|
||||
|
||||
// wrapper to add custom options
|
||||
async function createDispatcher(options={}){
|
||||
|
||||
// merge options
|
||||
const opt = _parseOptions(options);
|
||||
|
||||
// load resources
|
||||
const resources = await _getResources(opt);
|
||||
|
||||
// multi-type support
|
||||
// @see https://github.com/expressjs/express/blob/master/examples/error-pages/index.js
|
||||
return function dispatchRequest(page, httpStatusCode, req, res, err){
|
||||
|
||||
// run generic dispatcher
|
||||
const {pageData, templateVars} = _dispatch(opt, resources, page, httpStatusCode, err);
|
||||
|
||||
// set http status code
|
||||
res.status(httpStatusCode || 500);
|
||||
|
||||
// multiple response formats
|
||||
res.format({
|
||||
// standard http-error-pages
|
||||
html: function(){
|
||||
res.type('.html');
|
||||
res.send(_render(resources.template, resources.stylesheet, opt.filter(templateVars, req, res)))
|
||||
},
|
||||
|
||||
// json
|
||||
json: function(){
|
||||
res.json({
|
||||
error: `${pageData.title} - ${pageData.message}`
|
||||
})
|
||||
},
|
||||
|
||||
// text response
|
||||
default: function(){
|
||||
// plain text
|
||||
res.type('.txt').send(`${pageData.title} - ${pageData.message}`);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = async function httpErrorPages(router, options={}){
|
||||
|
||||
// create new disptacher with given options
|
||||
const dispatch = await createDispatcher(options);
|
||||
|
||||
// default 404 error - no route matches
|
||||
router.all('*', function(req, res){
|
||||
dispatch('404', 404, req, res, new Error('file not found'));
|
||||
});
|
||||
|
||||
// internal errors (all)
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
router.use(function(err, req, res, next){
|
||||
// status code given ?
|
||||
if (err.status){
|
||||
// custom errorpage set ?
|
||||
dispatch(err.errorpage || err.status, err.status, req, res, err);
|
||||
|
||||
// use default http500 page
|
||||
}else{
|
||||
dispatch('500', 500, req, res, err);
|
||||
}
|
||||
});
|
||||
};
|
18
lib/json-reader.js
Normal file
18
lib/json-reader.js
Normal file
|
@ -0,0 +1,18 @@
|
|||
const _fs = require('fs-magic');
|
||||
|
||||
// parse json file and allow single line comments
|
||||
module.exports = async function readJSONFile(filename){
|
||||
// load file
|
||||
let raw = await _fs.readFile(filename, 'utf8');
|
||||
|
||||
// strip single line js comments
|
||||
raw = raw.replace(/^\s*\/\/.*$/gm, '');
|
||||
|
||||
// try to parse json
|
||||
try{
|
||||
return JSON.parse(raw);
|
||||
}catch(e){
|
||||
console.log(`Error parsing JSON file: [${filename}]`);
|
||||
throw e;
|
||||
}
|
||||
}
|
78
lib/koa.js
Normal file
78
lib/koa.js
Normal file
|
@ -0,0 +1,78 @@
|
|||
const _render = require('./page-renderer');
|
||||
const _parseOptions = require('./options');
|
||||
const _getResources = require('./resources');
|
||||
const _dispatch = require('./dispatcher');
|
||||
|
||||
// wrapper to add custom options
|
||||
async function createDispatcher(options={}){
|
||||
|
||||
// merge options
|
||||
const opt = _parseOptions(options);
|
||||
|
||||
// load resources
|
||||
const resources = await _getResources(opt);
|
||||
|
||||
// multi-type support
|
||||
// @see https://github.com/koajs/koa/blob/master/docs/api/response.md#responseistypes
|
||||
return function dispatchRequest(page, httpStatusCode, ctx, err){
|
||||
|
||||
// run generic dispatcher
|
||||
const {pageData, templateVars} = _dispatch(opt, resources, page, httpStatusCode, err);
|
||||
|
||||
// set http status code
|
||||
ctx.status = httpStatusCode || 500;
|
||||
|
||||
// multiple response formats
|
||||
switch (ctx.accepts('json', 'html', 'text')){
|
||||
|
||||
// jsonn response
|
||||
case 'json':
|
||||
ctx.type = 'json';
|
||||
ctx.body = {
|
||||
error: `${pageData.title} - ${pageData.message}`
|
||||
}
|
||||
break;
|
||||
|
||||
// html response
|
||||
case 'html':
|
||||
ctx.type = 'html';
|
||||
ctx.body = _render(resources.template, resources.stylesheet, opt.filter(templateVars, ctx));
|
||||
break;
|
||||
|
||||
// default: text response
|
||||
default:
|
||||
ctx.type = 'text/plain';
|
||||
ctx.body = `${pageData.title} - ${pageData.message}`;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = async function httpErrorPages(options={}){
|
||||
|
||||
// create new disptacher with given options
|
||||
const dispatch = await createDispatcher(options);
|
||||
|
||||
// create error handler
|
||||
// @see https://github.com/koajs/koa/blob/master/docs/error-handling.md
|
||||
return async (ctx, next) => {
|
||||
try{
|
||||
// dispatch middleware chain
|
||||
await next();
|
||||
|
||||
// route not found ?
|
||||
if (ctx.status === 404) {
|
||||
dispatch('404', 404, ctx, new Error('file not found'));
|
||||
}
|
||||
}catch(err){
|
||||
// status code given ?
|
||||
if (err.status){
|
||||
// custom errorpage set ?
|
||||
dispatch(err.errorpage || err.status, err.status, ctx, err);
|
||||
|
||||
// use default http500 page
|
||||
}else{
|
||||
dispatch('500', 500, ctx, err);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
8
lib/main.js
Normal file
8
lib/main.js
Normal file
|
@ -0,0 +1,8 @@
|
|||
const _express = require('./express');
|
||||
const _koa = require('./koa');
|
||||
|
||||
// framework specific error-handler
|
||||
module.exports = {
|
||||
koa: _koa,
|
||||
express: _express
|
||||
};
|
17
lib/options.js
Normal file
17
lib/options.js
Normal file
|
@ -0,0 +1,17 @@
|
|||
const _path = require('path');
|
||||
|
||||
// wrapper to add custom options
|
||||
module.exports = function getOptions(opt){
|
||||
|
||||
// merge options
|
||||
const options = {
|
||||
template: opt.template || _path.join(__dirname, '../assets/template.ejs'),
|
||||
stylesheet: opt.css || _path.join(__dirname, '../assets/layout.css'),
|
||||
lang: opt.lang || 'en_US',
|
||||
payload: opt.payload || {},
|
||||
filter: opt.filter || function(d){return d},
|
||||
onError: opt.onError || null
|
||||
};
|
||||
|
||||
return options;
|
||||
}
|
|
@ -1,27 +1,37 @@
|
|||
var _path = require('path');
|
||||
var _fs = require('fs');
|
||||
var _basedir = _path.dirname(__dirname);
|
||||
const _ejs = require('ejs');
|
||||
|
||||
// load template file (1 time)
|
||||
var _template = _fs.readFileSync(_path.join(_basedir, 'dist/HTTP0.html'), 'utf8');
|
||||
// render template using given data
|
||||
module.exports = function renderTemplate(template, css, data={}){
|
||||
|
||||
// simple template renderer
|
||||
function renderPage(vars){
|
||||
var tpl = _template;
|
||||
// pagetitle set ?
|
||||
if (!data.pagetitle){
|
||||
// use default title
|
||||
data.pagetitle = `We've got some trouble | ${data.code} - ${data.title}`;
|
||||
}
|
||||
|
||||
// add vars
|
||||
tpl = tpl.replace(/{{([a-z]+)}}/gm, function(match, name){
|
||||
// assign css
|
||||
data.inlinecss = css;
|
||||
|
||||
// var available ?
|
||||
if (vars[name]){
|
||||
return vars[name];
|
||||
// remove unused vars
|
||||
}else{
|
||||
return '';
|
||||
// render template
|
||||
return _ejs.render(template, data, {
|
||||
// wrap all variables into "vars" object
|
||||
strict: true,
|
||||
_with: false,
|
||||
localsName: 'vars',
|
||||
|
||||
// use custom escape function to handle linebreaks!
|
||||
escape: function(text){
|
||||
if (!text){
|
||||
return '';
|
||||
}
|
||||
|
||||
// apply generic escape function
|
||||
text = _ejs.escapeXML(text);
|
||||
|
||||
// linebreaks
|
||||
text = text.replace(/\n/g, '<br />');
|
||||
|
||||
return text;
|
||||
}
|
||||
});
|
||||
|
||||
return tpl;
|
||||
}
|
||||
|
||||
module.exports = renderPage;
|
||||
}
|
22
lib/resources.js
Normal file
22
lib/resources.js
Normal file
|
@ -0,0 +1,22 @@
|
|||
const _path = require('path');
|
||||
const _fs = require('fs-magic');
|
||||
const _jsonReader = require('./json-reader');
|
||||
|
||||
// wrapper to add custom options
|
||||
module.exports = async function loadResources(opt){
|
||||
|
||||
// load page template
|
||||
const template = opt.template && await _fs.readFile(opt.template, 'utf8');
|
||||
|
||||
// load styles
|
||||
const stylesheet = opt.stylesheet && await _fs.readFile(opt.stylesheet, 'utf8');
|
||||
|
||||
// load page definitions
|
||||
const pages = opt.lang && await _jsonReader(_path.join(__dirname, '../i18n/pages-' + opt.lang + '.json'));
|
||||
|
||||
return {
|
||||
template: template,
|
||||
stylesheet: stylesheet,
|
||||
pages: pages
|
||||
};
|
||||
}
|
91
package.json
91
package.json
|
@ -1,33 +1,62 @@
|
|||
{
|
||||
"name": "http-error-pages",
|
||||
"version": "0.5.0",
|
||||
"description": "Simple HTTP Error Pages for expressjs",
|
||||
"keywords": [
|
||||
"http",
|
||||
"https",
|
||||
"error",
|
||||
"errorpage",
|
||||
"express",
|
||||
"expressjs",
|
||||
"router",
|
||||
"handler"
|
||||
],
|
||||
"files": [
|
||||
"bin",
|
||||
"dist",
|
||||
"express-demo.js",
|
||||
"CHANGED.md",
|
||||
"LICENSE.md",
|
||||
"README.md"
|
||||
],
|
||||
"bin": {},
|
||||
"main": "./lib/router.js",
|
||||
"author": "Andi Dittrich (https://andidittrich.de)",
|
||||
"homepage": "https://github.com/AndiDittrich/HttpErrorPages",
|
||||
"bugs": "https://github.com/AndiDittrich/HttpErrorPages/issues",
|
||||
"repository": "AndiDittrich/HttpErrorPages",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"express": "^4.15.2"
|
||||
}
|
||||
"name": "http-error-pages",
|
||||
"version": "3.1.0",
|
||||
"description": "Simple HTTP Error Pages. standalone + static + koa + express",
|
||||
"engines": {
|
||||
"node": ">=7.6"
|
||||
},
|
||||
"scripts": {
|
||||
"docs": "node bin/generator.js static docs/config.json --out=docs",
|
||||
"dist": "node bin/generator.js static config-dist.json --out=dist; tar -cf dist/pages.tar dist/*.html",
|
||||
"static": "node bin/generator.js static",
|
||||
"gulp": "gulp"
|
||||
},
|
||||
"keywords": [
|
||||
"http",
|
||||
"https",
|
||||
"error",
|
||||
"errorpage",
|
||||
"express",
|
||||
"expressjs",
|
||||
"router",
|
||||
"handler"
|
||||
],
|
||||
"files": [
|
||||
"lib",
|
||||
"dist",
|
||||
"i18n",
|
||||
"assets",
|
||||
"bin",
|
||||
"examples",
|
||||
"CHANGES.md",
|
||||
"LICENSE.md",
|
||||
"README.md"
|
||||
],
|
||||
"bin": {
|
||||
"http-error-pages": "./bin/generator.js"
|
||||
},
|
||||
"main": "./lib/main.js",
|
||||
"author": "Andi Dittrich (https://andidittrich.com)",
|
||||
"homepage": "https://github.com/HttpErrorPages/HttpErrorPages",
|
||||
"bugs": "https://github.com/HttpErrorPages/HttpErrorPages/issues",
|
||||
"repository": "HttpErrorPages/HttpErrorPages",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"commander": "^6.2.0",
|
||||
"eslint": "^7.4.0",
|
||||
"eslint-config-aenondynamics": "^0.2.0",
|
||||
"express": "^4.17.1",
|
||||
"gulp": "^4.0.2",
|
||||
"gulp-clean-css": "^4.3.0",
|
||||
"gulp-concat": "^2.6.1",
|
||||
"gulp-prettyerror": "^2.0.0",
|
||||
"gulp-sass": "^5.1.0",
|
||||
"koa": "^2.13.0",
|
||||
"less": "^3.11.3",
|
||||
"sass": "^1.60.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"ejs": "^3.1.3",
|
||||
"fs-magic": "^2.1.1"
|
||||
}
|
||||
}
|
||||
|
|
71
pages.php
71
pages.php
|
@ -1,71 +0,0 @@
|
|||
<?php
|
||||
return array (
|
||||
|
||||
// STANDARD ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
'400' => array (
|
||||
'title' => 'Bad Request',
|
||||
'message' => 'The server cannot process the request due to something that is perceived to be a client error.'
|
||||
),
|
||||
'401' => array (
|
||||
'title' => 'Unauthorized',
|
||||
'message' => 'The requested resource requires an authentication.'
|
||||
),
|
||||
|
||||
'403' => array (
|
||||
'title' => 'Access Denied',
|
||||
'message' => 'The requested resource requires an authentication.'
|
||||
),
|
||||
|
||||
// http 404 not found
|
||||
'404' => array (
|
||||
'title' => 'Resource not found',
|
||||
'message' => 'The requested resource could not be found but may be available again in the future.'
|
||||
),
|
||||
|
||||
// internal server error
|
||||
'500' => array (
|
||||
'title' => 'Webservice currently unavailable',
|
||||
'message' => "An unexpected condition was encountered.\nOur service team has been dispatched to bring it back online."
|
||||
),
|
||||
|
||||
// unknown http method
|
||||
'501' => array (
|
||||
'title' => 'Not Implemented',
|
||||
'message' => 'The Webserver cannot recognize the request method.'
|
||||
),
|
||||
|
||||
// http proxy forward error
|
||||
'502' => array (
|
||||
'title' => 'Webservice currently unavailable',
|
||||
'message' => "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
),
|
||||
|
||||
// webserver service error
|
||||
'503' => array (
|
||||
'title' => 'Webservice currently unavailable',
|
||||
'message' => "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
),
|
||||
|
||||
// CUSTOM ERROR CODES
|
||||
// =======================================================
|
||||
|
||||
// webserver origin error
|
||||
'520' => array(
|
||||
'title' => 'Origin Error - Unknown Host',
|
||||
'message' => 'The requested hostname is not routed. Use only hostnames to access resources.'
|
||||
),
|
||||
|
||||
// webserver down error
|
||||
'521' => array (
|
||||
'title' => 'Webservice currently unavailable',
|
||||
'message' => "We've got some trouble with our backend upstream cluster.\nOur service team has been dispatched to bring it back online."
|
||||
),
|
||||
|
||||
// maintenance
|
||||
'533' => array(
|
||||
'title' => 'Scheduled Maintenance',
|
||||
'message' => "This site is currently down for maintenance.\nOur service team is working hard to bring it back online soon."
|
||||
)
|
||||
);
|
|
@ -1,27 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<!-- Simple HttpErrorPages | MIT X11 License | https://github.com/AndiDittrich/HttpErrorPages -->
|
||||
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
|
||||
<title>We've got some trouble | <?php echo $v_code; ?> - <?php echo $v_title; ?></title>
|
||||
|
||||
<style type="text/css"><?php echo $css; ?></style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="cover">
|
||||
<h1><?php echo $v_title; ?> <small>Error <?php echo $v_code; ?></small></h1>
|
||||
<p class="lead"><?php echo $v_message; ?></p>
|
||||
</div>
|
||||
|
||||
<?php if (!empty($v_footer)){ ?>
|
||||
<footer>
|
||||
<p><?php echo $v_footer; ?></p>
|
||||
</footer>
|
||||
<?php } ?>
|
||||
</body>
|
||||
</html>
|
Loading…
Add table
Reference in a new issue