├── .gitignore
├── bin
├── rebuild-apache-mime-types
└── rebuild-apache-mime-types.php
├── tests
├── fixtures
│ ├── mime.types
│ └── mime.types.json
├── PhpRepositoryTest.php
├── FlatRepositoryTest.php
├── JsonRepositoryTest.php
├── ArrayRepositoryTest.php
├── ParserTest.php
├── CompositeRepositoryTest.php
└── AbstractRepositoryTestCase.php
├── .travis.yml
├── phpunit.xml.dist
├── src
└── Dflydev
│ └── ApacheMimeTypes
│ ├── JsonRepository.php
│ ├── FlatRepository.php
│ ├── Parser.php
│ ├── RepositoryInterface.php
│ ├── ArrayRepository.php
│ ├── CompositeRepository.php
│ ├── AbstractRepository.php
│ ├── Resources
│ ├── mime.types.json
│ └── mime.types
│ └── PhpRepository.php
├── composer.json
├── resources
└── PhpRepository.twig
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | /vendor/
2 | composer.lock
3 |
--------------------------------------------------------------------------------
/bin/rebuild-apache-mime-types:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env php
2 |
2 |
3 |
4 |
5 | ./tests
6 |
7 |
8 |
9 |
10 |
11 | ./src/Dflydev/ApacheMimeTypes/
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/tests/PhpRepositoryTest.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class PhpRepositoryTest extends AbstractRepositoryTestCase
22 | {
23 | protected function createDefaultRepository()
24 | {
25 | return new PhpRepository;
26 | }
27 |
28 | protected function createRepository()
29 | {
30 | return null;
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/tests/FlatRepositoryTest.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class FlatRepositoryTest extends AbstractRepositoryTestCase
22 | {
23 | protected function createDefaultRepository()
24 | {
25 | return new FlatRepository;
26 | }
27 |
28 | protected function createRepository()
29 | {
30 | return new FlatRepository(__DIR__.'/fixtures/mime.types');
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/tests/JsonRepositoryTest.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class JsonRepositoryTest extends AbstractRepositoryTestCase
22 | {
23 | protected function createDefaultRepository()
24 | {
25 | return new JsonRepository;
26 | }
27 |
28 | protected function createRepository()
29 | {
30 | return new JsonRepository(__DIR__.'/fixtures/mime.types.json');
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/tests/ArrayRepositoryTest.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class ArrayRepositoryTest extends AbstractRepositoryTestCase
22 | {
23 | protected function createDefaultRepository()
24 | {
25 | return null;
26 | }
27 |
28 | protected function createRepository()
29 | {
30 | return new ArrayRepository(array(
31 | 'dflydev/apache-mime-types' => array('dflydevamt', 'ddevamt'),
32 | 'dflydev/yet-another-mime-type' => array('dflydevyamt'),
33 | ));
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/JsonRepository.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class JsonRepository extends AbstractRepository
22 | {
23 | protected $filename;
24 |
25 | /**
26 | * Constructor
27 | *
28 | * @param string $filename
29 | */
30 | public function __construct($filename = null)
31 | {
32 | if (null === $filename) {
33 | $filename = __DIR__.'/Resources/mime.types.json';
34 | }
35 |
36 | $this->filename = $filename;
37 | }
38 |
39 | protected function internalInit()
40 | {
41 | $this->setFromMap(json_decode(file_get_contents($this->filename), true));
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dflydev/apache-mime-types",
3 | "description": "Apache MIME Types",
4 | "keywords": ["apache", "mime", "mimetypes"],
5 | "license": "MIT",
6 | "authors": [
7 | {
8 | "name": "Dragonfly Development Inc.",
9 | "email": "info@dflydev.com",
10 | "homepage": "http://dflydev.com"
11 | },
12 | {
13 | "name": "Beau Simensen",
14 | "email": "beau@dflydev.com",
15 | "homepage": "http://beausimensen.com"
16 | }
17 | ],
18 | "require": {
19 | "php": ">=5.3"
20 | },
21 | "require-dev": {
22 | "twig/twig": "1.*",
23 | "phpunit/phpunit": "^7.4"
24 | },
25 | "autoload": {
26 | "psr-0": {
27 | "Dflydev\\ApacheMimeTypes": "src"
28 | }
29 | },
30 | "autoload-dev": {
31 | "psr-4": {
32 | "Dflydev\\ApacheMimeTypes\\Test\\": "tests"
33 | }
34 | },
35 | "extra": {
36 | "branch-alias": {
37 | "dev-master": "1.0-dev"
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/FlatRepository.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class FlatRepository extends AbstractRepository
22 | {
23 | protected $filename;
24 |
25 | /**
26 | * Constructor
27 | *
28 | * @param string $filename
29 | */
30 | public function __construct($filename = null)
31 | {
32 | if (null === $filename) {
33 | $filename = __DIR__.'/Resources/mime.types';
34 | }
35 |
36 | $this->filename = $filename;
37 | }
38 |
39 | protected function internalInit()
40 | {
41 | $parser = new Parser;
42 |
43 | $this->setFromMap($parser->parse($this->filename));
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/Parser.php:
--------------------------------------------------------------------------------
1 |
18 | */
19 | class Parser
20 | {
21 | /**
22 | * Parse Apache MIME Types
23 | *
24 | * @param string $filename Filename
25 | *
26 | * @return array
27 | */
28 | public function parse($filename)
29 | {
30 | $lines = file($filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
31 | $map = array();
32 |
33 | foreach ($lines as $line) {
34 | if (strpos($line, '#') !== 0) {
35 | preg_match_all('/^((\w|\/|\.|-|\+)+)(\s+)([^\n]*)$/im', $line, $match);
36 | $type = $match[1][0];
37 | $extensions = explode(' ', $match[4][0]);
38 |
39 | $map[$type] = $extensions;
40 | }
41 | }
42 |
43 | return $map;
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/RepositoryInterface.php:
--------------------------------------------------------------------------------
1 |
18 | */
19 | interface RepositoryInterface
20 | {
21 | /**
22 | * Dump extension to type map
23 | *
24 | * @return array
25 | */
26 | public function dumpExtensionToType();
27 |
28 | /**
29 | * Dump type to extensions map
30 | *
31 | * @return array
32 | */
33 | public function dumpTypeToExtensions();
34 |
35 | /**
36 | * Find all extensions for a type
37 | *
38 | * @param string $type
39 | *
40 | * @return array
41 | */
42 | public function findExtensions($type);
43 |
44 | /**
45 | * Find a type for an extension
46 | *
47 | * @param string $extension
48 | *
49 | * @return string
50 | */
51 | public function findType($extension);
52 | }
53 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/ArrayRepository.php:
--------------------------------------------------------------------------------
1 |
18 | */
19 | class ArrayRepository extends AbstractRepository
20 | {
21 | protected $data;
22 |
23 | /**
24 | * Constructor
25 | *
26 | * @param array $data
27 | */
28 | public function __construct(array $data = array())
29 | {
30 | $this->data = $data;
31 | }
32 |
33 | protected function internalInit()
34 | {
35 | $this->setFromMap($this->data);
36 | }
37 |
38 | public function addType($type, array $extensions)
39 | {
40 | $this->reset();
41 |
42 | if (isset($this->data[$type])) {
43 | $this->data[$type] = array_unique($extensions, array_merge($this->data[$type]));
44 | } else {
45 | $this->data[$type] = array_unique($extensions);
46 | }
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/tests/ParserTest.php:
--------------------------------------------------------------------------------
1 |
20 | */
21 | class ParserTest extends \PHPUnit\Framework\TestCase
22 | {
23 | public function setUp()
24 | {
25 | $parser = new Parser;
26 |
27 | $this->map = $parser->parse(__DIR__.'/../src/Dflydev/ApacheMimeTypes/Resources/mime.types');
28 | }
29 |
30 | public function testCss()
31 | {
32 | $this->assertArrayHasKey('text/css', $this->map);
33 | $this->assertCount(1, $this->map['text/css']);
34 | $this->assertEquals('css', $this->map['text/css'][0]);
35 | }
36 |
37 | public function testHtml()
38 | {
39 | $this->assertArrayHasKey('text/html', $this->map);
40 | $this->assertCount(2, $this->map['text/html']);
41 | $this->assertEquals('html', $this->map['text/html'][0]);
42 | $this->assertEquals('htm', $this->map['text/html'][1]);
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/tests/CompositeRepositoryTest.php:
--------------------------------------------------------------------------------
1 |
24 | */
25 | class CompositeRepositoryTest extends AbstractRepositoryTestCase
26 | {
27 | protected function createDefaultRepository()
28 | {
29 | return new CompositeRepository(array(
30 | new PhpRepository,
31 | new JsonRepository,
32 | new FlatRepository,
33 | ));
34 | }
35 |
36 | protected function createRepository()
37 | {
38 | return new CompositeRepository(array(
39 | new ArrayRepository(array(
40 | 'dflydev/apache-mime-types' => array('dflydevamt'),
41 | 'dflydev/yet-another-mime-type' => array('dflydevyamt'),
42 | )),
43 | new ArrayRepository(array(
44 | 'dflydev/apache-mime-types' => array('ddevamt'),
45 | )),
46 | ));
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/bin/rebuild-apache-mime-types.php:
--------------------------------------------------------------------------------
1 | dumpTypeToExtensions();
23 | $extensionToType = $repository->dumpExtensionToType();
24 |
25 | file_put_contents(__DIR__.'/../src/Dflydev/ApacheMimeTypes/Resources/mime.types.json', json_encode($typeToExtensions));
26 |
27 | $twig = new Twig_Environment(
28 | new Twig_Loader_Filesystem(__DIR__.'/../resources'),
29 | array(
30 | 'autoescape' => false,
31 | 'auto_reload' => true,
32 | )
33 | );
34 |
35 | file_put_contents(
36 | __DIR__ . '/../src/Dflydev/ApacheMimeTypes/PhpRepository.php',
37 | $twig->render('PhpRepository.twig', array(
38 | 'extensionToType' => $extensionToType,
39 | 'typeToExtensions' => $typeToExtensions,
40 | ))
41 | );
42 |
43 | $parser = new Dflydev\ApacheMimeTypes\Parser;
44 |
45 | $fixturesMap = $parser->parse(__DIR__.'/../tests/Dflydev/ApacheMimeTypes/Fixtures/mime.types');
46 | file_put_contents(__DIR__.'/../tests/Dflydev/ApacheMimeTypes/Fixtures/mime.types.json', json_encode($fixturesMap));
47 |
48 |
--------------------------------------------------------------------------------
/resources/PhpRepository.twig:
--------------------------------------------------------------------------------
1 |
18 | */
19 | class PhpRepository implements RepositoryInterface
20 | {
21 | protected $extensionToType = array(
22 | {% spaceless %}
23 |
24 | {% for extension, type in extensionToType %}
25 | '{{ extension }}' => '{{ type }}',
26 | {% endfor %}
27 |
28 | {% endspaceless %}
29 |
30 | );
31 |
32 | protected $typeToExtensions = array(
33 | {% spaceless %}
34 |
35 | {% for type, extensions in typeToExtensions %}
36 | '{{ type }}' => array({% for extension in extensions %}{% if not loop.first %}, {% endif %}'{{ extension }}'{% endfor %}),
37 | {% endfor %}
38 |
39 | {% endspaceless %}
40 |
41 | );
42 |
43 | /**
44 | * {@inheritdoc}
45 | */
46 | public function dumpExtensionToType()
47 | {
48 | return $this->extensionToType;
49 | }
50 |
51 | /**
52 | * {@inheritdoc}
53 | */
54 | public function dumpTypeToExtensions()
55 | {
56 | return $this->typeToExtensions;
57 | }
58 |
59 | /**
60 | * {@inheritdoc}
61 | */
62 | public function findExtensions($type)
63 | {
64 | if (isset($this->typeToExtensions[$type])) {
65 | return $this->typeToExtensions[$type];
66 | }
67 |
68 | return array();
69 | }
70 |
71 | /**
72 | * {@inheritdoc}
73 | */
74 | public function findType($extension)
75 | {
76 | if (isset($this->extensionToType[$extension])) {
77 | return $this->extensionToType[$extension];
78 | }
79 |
80 | return null;
81 | }
82 | }
83 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/CompositeRepository.php:
--------------------------------------------------------------------------------
1 |
18 | */
19 | class CompositeRepository implements RepositoryInterface
20 | {
21 | protected $repositories;
22 |
23 | /**
24 | * Constructor
25 | *
26 | * @param array $repositories Repositories
27 | */
28 | public function __construct(array $repositories = array())
29 | {
30 | $this->repositories = $repositories;
31 | }
32 |
33 | /**
34 | * {@inheritdoc}
35 | */
36 | public function dumpExtensionToType()
37 | {
38 | $extensionToType = array();
39 | foreach ($this->repositories as $repository) {
40 | foreach ($repository->dumpExtensionToType() as $extension => $type) {
41 | if (!isset($extensionToType[$extension])) {
42 | $extensionToType[$extension] = $type;
43 | }
44 | }
45 | }
46 |
47 | return $extensionToType;
48 | }
49 |
50 | /**
51 | * {@inheritdoc}
52 | */
53 | public function dumpTypeToExtensions()
54 | {
55 | $typeToExtensions = array();
56 | foreach ($this->repositories as $repository) {
57 | foreach ($repository->dumpTypeToExtensions() as $type => $extensions) {
58 | if (isset($typeToExtensions[$type])) {
59 | $typeToExtensions[$type] = array_unique(array_merge($typeToExtensions[$type], $extensions));
60 | } else {
61 | $typeToExtensions[$type] = array_unique($extensions);
62 | }
63 | }
64 | }
65 |
66 | return $typeToExtensions;
67 | }
68 |
69 | /**
70 | * {@inheritdoc}
71 | */
72 | public function findExtensions($type)
73 | {
74 | $typeToExtensions = $this->dumpTypeToExtensions();
75 |
76 | if (isset($typeToExtensions[$type])) {
77 | return $typeToExtensions[$type];
78 | }
79 |
80 | return array();
81 | }
82 |
83 | /**
84 | * {@inheritdoc}
85 | */
86 | public function findType($extension)
87 | {
88 | $extensionToType = $this->dumpExtensionToType();
89 |
90 | if (isset($extensionToType[$extension])) {
91 | return $extensionToType[$extension];
92 | }
93 |
94 | return null;
95 | }
96 | }
97 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/AbstractRepository.php:
--------------------------------------------------------------------------------
1 |
18 | */
19 | abstract class AbstractRepository implements RepositoryInterface
20 | {
21 | protected $typeToExtensions;
22 | protected $extensionToType;
23 | private $isInitialized = false;
24 |
25 | protected function init()
26 | {
27 | if (true === $this->isInitialized) {
28 | return;
29 | }
30 |
31 | $this->internalInit();
32 |
33 | $this->isInitialized = true;
34 | }
35 |
36 | protected function reset()
37 | {
38 | $this->isInitialized = false;
39 | }
40 |
41 | /**
42 | * Set from map
43 | *
44 | * Convenience method supplied in order to make it easier for subclasses
45 | * to set data from a type => extensions array mapping.
46 | *
47 | * @param array $map
48 | */
49 | protected function setFromMap(array $map)
50 | {
51 | $this->typeToExtensions = $map;
52 |
53 | $this->extensionToType = array();
54 | foreach ($this->typeToExtensions as $type => $extensions) {
55 | foreach ($extensions as $extension) {
56 | if (!isset($this->extensionToType[$extension])) {
57 | $this->extensionToType[$extension] = $type;
58 | }
59 | }
60 | }
61 | }
62 |
63 | /**
64 | * {@inheritdoc}
65 | */
66 | public function dumpTypeToExtensions()
67 | {
68 | $this->init();
69 |
70 | return $this->typeToExtensions;
71 | }
72 |
73 | /**
74 | * {@inheritdoc}
75 | */
76 | public function dumpExtensionToType()
77 | {
78 | $this->init();
79 |
80 | return $this->extensionToType;
81 | }
82 |
83 | /**
84 | * {@inheritdoc}
85 | */
86 | public function findExtensions($type)
87 | {
88 | $this->init();
89 |
90 | if (isset($this->typeToExtensions[$type])) {
91 | return $this->typeToExtensions[$type];
92 | }
93 |
94 | return array();
95 | }
96 |
97 | /**
98 | * {@inheritdoc}
99 | */
100 | public function findType($extension)
101 | {
102 | $this->init();
103 |
104 | if (isset($this->extensionToType[$extension])) {
105 | return $this->extensionToType[$extension];
106 | }
107 |
108 | return null;
109 | }
110 |
111 | /**
112 | * Internal initialization
113 | *
114 | * Subclasses should extend this in order to execute code exactly
115 | * once to initialize the repository.
116 | */
117 | abstract protected function internalInit();
118 | }
119 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Apache MIME Types
2 | =================
3 |
4 | Parses Apache MIME Types files and provides a simple interface to find
5 | extensions by type and type by extension.
6 |
7 | [](https://travis-ci.org/dflydev/dflydev-apache-mime-types)
8 |
9 |
10 | Features
11 | --------
12 |
13 | * Bundles `mime.types` from the Apache HTTP Project. ([see here][1])
14 | * Bundles a JSON representation of Apache `mime.types`.
15 | * Provides an interface for reading either flat Apache HTTP `mime.types`
16 | or a JSON representation.
17 |
18 |
19 | Requirements
20 | ------------
21 |
22 | * PHP 5.3.3+
23 |
24 |
25 | Installation
26 | ------------
27 |
28 | Through [Composer][3] as [dflydev/apache-mime-types][4].
29 |
30 |
31 | Usage
32 | -----
33 |
34 | ### Parser
35 |
36 | Parses Apache MIME Types in the format of `mime.types` [found here][1].
37 |
38 | ```php
39 | parse('/path/to/mime.types');
43 | ```
44 |
45 | The return value from `parse` is an array mapping types to an array of
46 | extensions.
47 |
48 | ```php
49 | array('html', 'htm'),
52 | );
53 | ```
54 |
55 |
56 | ### PhpRepository
57 |
58 | A repository backed by static PHP arrays.
59 |
60 | ```php
61 | findType('html');
65 | $extensions = $repository->findExtensions('text/html');
66 |
67 | var_dump($type);
68 | var_dump($extensions);
69 |
70 | //
71 | // Result
72 | //
73 | // string(9) "text/html"
74 | // array(2) {
75 | // [0]=>
76 | // string(4) "html"
77 | // [1]=>
78 | // string(3) "htm"
79 | // }
80 | //
81 | ```
82 |
83 |
84 | ### JsonRepository
85 |
86 | A repository backed by a JSON map of type to extensions.
87 |
88 | ```json
89 | {
90 | "text/html": ["html", "htm"]
91 | }
92 | ```
93 |
94 | To use the embedded JSON:
95 |
96 | ```php
97 | findType('html');
101 | $extensions = $repository->findExtensions('text/html');
102 |
103 | var_dump($type);
104 | var_dump($extensions);
105 |
106 | //
107 | // Result
108 | //
109 | // string(9) "text/html"
110 | // array(2) {
111 | // [0]=>
112 | // string(4) "html"
113 | // [1]=>
114 | // string(3) "htm"
115 | // }
116 | //
117 | ```
118 |
119 | To specify a specific JSON mapping:
120 |
121 | ```php
122 | findType('html');
136 | $extensions = $repository->findExtensions('text/html');
137 |
138 | var_dump($type);
139 | var_dump($extensions);
140 |
141 | //
142 | // Result
143 | //
144 | // string(9) "text/html"
145 | // array(2) {
146 | // [0]=>
147 | // string(4) "html"
148 | // [1]=>
149 | // string(3) "htm"
150 | // }
151 | //
152 | ```
153 |
154 | To specify a specific `mime.types` mapping:
155 |
156 | ```php
157 |
18 | */
19 | abstract class AbstractRepositoryTestCase extends \PHPUnit\Framework\TestCase
20 | {
21 | abstract protected function createDefaultRepository();
22 | abstract protected function createRepository();
23 |
24 | public function testDefaultCss()
25 | {
26 | $repository = $this->createDefaultRepository();
27 |
28 | if (null === $repository) {
29 | $this->assertTrue(true);
30 | return;
31 | }
32 |
33 | $this->assertEquals('text/css', $repository->findType('css'));
34 |
35 | $extensions = $repository->findExtensions('text/css');
36 | $this->assertCount(1, $extensions);
37 | $this->assertEquals('css', $extensions[0]);
38 | }
39 |
40 | public function testDefaultHtml()
41 | {
42 | $repository = $this->createDefaultRepository();
43 |
44 | if (null === $repository) {
45 | $this->assertTrue(true);
46 | return;
47 | }
48 |
49 | $this->assertEquals('text/html', $repository->findType('html'));
50 | $this->assertEquals('text/html', $repository->findType('htm'));
51 |
52 | $extensions = $repository->findExtensions('text/html');
53 | $this->assertCount(2, $extensions);
54 | $this->assertEquals('html', $extensions[0]);
55 | $this->assertEquals('htm', $extensions[1]);
56 | }
57 |
58 | public function testDefaultMissing()
59 | {
60 | $repository = $this->createDefaultRepository();
61 |
62 | if (null === $repository) {
63 | $this->assertTrue(true);
64 | return;
65 | }
66 |
67 | $this->assertTrue(is_array($repository->findExtensions('foobar/missing')));
68 | $this->assertEmpty($repository->findExtensions('foobar/missing'));
69 | $this->assertNull($repository->findType('shouldnotexist'));
70 | }
71 |
72 | public function testDefaultDumpTypeToExtensions()
73 | {
74 | $repository = $this->createDefaultRepository();
75 |
76 | if (null === $repository) {
77 | $this->assertTrue(true);
78 | return;
79 | }
80 |
81 | $dump = $repository->dumpTypeToExtensions();
82 |
83 | $this->assertCount(784, array_keys($dump));
84 | }
85 |
86 | public function testDefaultDumpExtensionToType()
87 | {
88 | $repository = $this->createDefaultRepository();
89 |
90 | if (null === $repository) {
91 | $this->assertTrue(true);
92 | return;
93 | }
94 |
95 | $dump = $repository->dumpExtensionToType();
96 |
97 | $this->assertCount(1005, array_keys($dump));
98 | }
99 |
100 | public function testMissing()
101 | {
102 | $repository = $this->createRepository();
103 |
104 | if (null === $repository) {
105 | $this->assertTrue(true);
106 | return;
107 | }
108 |
109 | $this->assertTrue(is_array($repository->findExtensions('foobar/missing')));
110 | $this->assertEmpty($repository->findExtensions('foobar/missing'));
111 | $this->assertNull($repository->findType('shouldnotexist'));
112 | }
113 |
114 | public function testFabricated()
115 | {
116 | $repository = $this->createRepository();
117 |
118 | if (null === $repository) {
119 | $this->assertTrue(true);
120 | return;
121 | }
122 |
123 | $extensions = $repository->findExtensions('dflydev/apache-mime-types');
124 | $this->count(2, $extensions);
125 | $this->assertEquals('dflydevamt', $extensions[0]);
126 | $this->assertEquals('ddevamt', $extensions[1]);
127 | }
128 |
129 | public function testDumpTypeToExtensions()
130 | {
131 | $repository = $this->createRepository();
132 |
133 | if (null === $repository) {
134 | $this->assertTrue(true);
135 | return;
136 | }
137 |
138 | $dump = $repository->dumpTypeToExtensions();
139 |
140 | $this->assertCount(2, array_keys($dump));
141 | $this->assertArrayHasKey('dflydev/apache-mime-types', $dump);
142 | $this->assertArrayHasKey('dflydev/yet-another-mime-type', $dump);
143 | }
144 |
145 | public function testDumpExtensionToType()
146 | {
147 | $repository = $this->createRepository();
148 |
149 | if (null === $repository) {
150 | $this->assertTrue(true);
151 | return;
152 | }
153 |
154 | $dump = $repository->dumpExtensionToType();
155 |
156 | $this->assertCount(3, array_keys($dump));
157 | $this->assertEquals('dflydev/apache-mime-types', $dump['dflydevamt']);
158 | $this->assertEquals('dflydev/apache-mime-types', $dump['ddevamt']);
159 | $this->assertEquals('dflydev/yet-another-mime-type', $dump['dflydevyamt']);
160 | }
161 | }
162 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/Resources/mime.types.json:
--------------------------------------------------------------------------------
1 | {"application\/andrew-inset":["ez"],"application\/applixware":["aw"],"application\/atom+xml":["atom"],"application\/atomcat+xml":["atomcat"],"application\/atomsvc+xml":["atomsvc"],"application\/ccxml+xml":["ccxml"],"application\/cdmi-capability":["cdmia"],"application\/cdmi-container":["cdmic"],"application\/cdmi-domain":["cdmid"],"application\/cdmi-object":["cdmio"],"application\/cdmi-queue":["cdmiq"],"application\/cu-seeme":["cu"],"application\/davmount+xml":["davmount"],"application\/docbook+xml":["dbk"],"application\/dssc+der":["dssc"],"application\/dssc+xml":["xdssc"],"application\/ecmascript":["ecma"],"application\/emma+xml":["emma"],"application\/epub+zip":["epub"],"application\/exi":["exi"],"application\/font-tdpfr":["pfr"],"application\/gml+xml":["gml"],"application\/gpx+xml":["gpx"],"application\/gxf":["gxf"],"application\/hyperstudio":["stk"],"application\/inkml+xml":["ink","inkml"],"application\/ipfix":["ipfix"],"application\/java-archive":["jar"],"application\/java-serialized-object":["ser"],"application\/java-vm":["class"],"application\/javascript":["js"],"application\/json":["json"],"application\/jsonml+json":["jsonml"],"application\/lost+xml":["lostxml"],"application\/mac-binhex40":["hqx"],"application\/mac-compactpro":["cpt"],"application\/mads+xml":["mads"],"application\/marc":["mrc"],"application\/marcxml+xml":["mrcx"],"application\/mathematica":["ma","nb","mb"],"application\/mathml+xml":["mathml"],"application\/mbox":["mbox"],"application\/mediaservercontrol+xml":["mscml"],"application\/metalink+xml":["metalink"],"application\/metalink4+xml":["meta4"],"application\/mets+xml":["mets"],"application\/mods+xml":["mods"],"application\/mp21":["m21","mp21"],"application\/mp4":["mp4s"],"application\/msword":["doc","dot"],"application\/mxf":["mxf"],"application\/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy"],"application\/oda":["oda"],"application\/oebps-package+xml":["opf"],"application\/ogg":["ogx"],"application\/omdoc+xml":["omdoc"],"application\/onenote":["onetoc","onetoc2","onetmp","onepkg"],"application\/oxps":["oxps"],"application\/patch-ops-error+xml":["xer"],"application\/pdf":["pdf"],"application\/pgp-encrypted":["pgp"],"application\/pgp-signature":["asc","sig"],"application\/pics-rules":["prf"],"application\/pkcs10":["p10"],"application\/pkcs7-mime":["p7m","p7c"],"application\/pkcs7-signature":["p7s"],"application\/pkcs8":["p8"],"application\/pkix-attr-cert":["ac"],"application\/pkix-cert":["cer"],"application\/pkix-crl":["crl"],"application\/pkix-pkipath":["pkipath"],"application\/pkixcmp":["pki"],"application\/pls+xml":["pls"],"application\/postscript":["ai","eps","ps"],"application\/prs.cww":["cww"],"application\/pskc+xml":["pskcxml"],"application\/rdf+xml":["rdf"],"application\/reginfo+xml":["rif"],"application\/relax-ng-compact-syntax":["rnc"],"application\/resource-lists+xml":["rl"],"application\/resource-lists-diff+xml":["rld"],"application\/rls-services+xml":["rs"],"application\/rpki-ghostbusters":["gbr"],"application\/rpki-manifest":["mft"],"application\/rpki-roa":["roa"],"application\/rsd+xml":["rsd"],"application\/rss+xml":["rss"],"application\/rtf":["rtf"],"application\/sbml+xml":["sbml"],"application\/scvp-cv-request":["scq"],"application\/scvp-cv-response":["scs"],"application\/scvp-vp-request":["spq"],"application\/scvp-vp-response":["spp"],"application\/sdp":["sdp"],"application\/set-payment-initiation":["setpay"],"application\/set-registration-initiation":["setreg"],"application\/shf+xml":["shf"],"application\/smil+xml":["smi","smil"],"application\/sparql-query":["rq"],"application\/sparql-results+xml":["srx"],"application\/srgs":["gram"],"application\/srgs+xml":["grxml"],"application\/sru+xml":["sru"],"application\/ssdl+xml":["ssdl"],"application\/ssml+xml":["ssml"],"application\/tei+xml":["tei","teicorpus"],"application\/thraud+xml":["tfi"],"application\/timestamped-data":["tsd"],"application\/vnd.3gpp.pic-bw-large":["plb"],"application\/vnd.3gpp.pic-bw-small":["psb"],"application\/vnd.3gpp.pic-bw-var":["pvb"],"application\/vnd.3gpp2.tcap":["tcap"],"application\/vnd.3m.post-it-notes":["pwn"],"application\/vnd.accpac.simply.aso":["aso"],"application\/vnd.accpac.simply.imp":["imp"],"application\/vnd.acucobol":["acu"],"application\/vnd.acucorp":["atc","acutc"],"application\/vnd.adobe.air-application-installer-package+zip":["air"],"application\/vnd.adobe.formscentral.fcdt":["fcdt"],"application\/vnd.adobe.fxp":["fxp","fxpl"],"application\/vnd.adobe.xdp+xml":["xdp"],"application\/vnd.adobe.xfdf":["xfdf"],"application\/vnd.ahead.space":["ahead"],"application\/vnd.airzip.filesecure.azf":["azf"],"application\/vnd.airzip.filesecure.azs":["azs"],"application\/vnd.amazon.ebook":["azw"],"application\/vnd.americandynamics.acc":["acc"],"application\/vnd.amiga.ami":["ami"],"application\/vnd.android.package-archive":["apk"],"application\/vnd.anser-web-certificate-issue-initiation":["cii"],"application\/vnd.anser-web-funds-transfer-initiation":["fti"],"application\/vnd.antix.game-component":["atx"],"application\/vnd.apple.installer+xml":["mpkg"],"application\/vnd.apple.mpegurl":["m3u8"],"application\/vnd.aristanetworks.swi":["swi"],"application\/vnd.astraea-software.iota":["iota"],"application\/vnd.audiograph":["aep"],"application\/vnd.blueice.multipass":["mpm"],"application\/vnd.bmi":["bmi"],"application\/vnd.businessobjects":["rep"],"application\/vnd.chemdraw+xml":["cdxml"],"application\/vnd.chipnuts.karaoke-mmd":["mmd"],"application\/vnd.cinderella":["cdy"],"application\/vnd.claymore":["cla"],"application\/vnd.cloanto.rp9":["rp9"],"application\/vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"application\/vnd.cluetrust.cartomobile-config":["c11amc"],"application\/vnd.cluetrust.cartomobile-config-pkg":["c11amz"],"application\/vnd.commonspace":["csp"],"application\/vnd.contact.cmsg":["cdbcmsg"],"application\/vnd.cosmocaller":["cmc"],"application\/vnd.crick.clicker":["clkx"],"application\/vnd.crick.clicker.keyboard":["clkk"],"application\/vnd.crick.clicker.palette":["clkp"],"application\/vnd.crick.clicker.template":["clkt"],"application\/vnd.crick.clicker.wordbank":["clkw"],"application\/vnd.criticaltools.wbs+xml":["wbs"],"application\/vnd.ctc-posml":["pml"],"application\/vnd.cups-ppd":["ppd"],"application\/vnd.curl.car":["car"],"application\/vnd.curl.pcurl":["pcurl"],"application\/vnd.dart":["dart"],"application\/vnd.data-vision.rdz":["rdz"],"application\/vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"application\/vnd.dece.ttml+xml":["uvt","uvvt"],"application\/vnd.dece.unspecified":["uvx","uvvx"],"application\/vnd.dece.zip":["uvz","uvvz"],"application\/vnd.denovo.fcselayout-link":["fe_launch"],"application\/vnd.dna":["dna"],"application\/vnd.dolby.mlp":["mlp"],"application\/vnd.dpgraph":["dpg"],"application\/vnd.dreamfactory":["dfac"],"application\/vnd.ds-keypoint":["kpxx"],"application\/vnd.dvb.ait":["ait"],"application\/vnd.dvb.service":["svc"],"application\/vnd.dynageo":["geo"],"application\/vnd.ecowin.chart":["mag"],"application\/vnd.enliven":["nml"],"application\/vnd.epson.esf":["esf"],"application\/vnd.epson.msf":["msf"],"application\/vnd.epson.quickanime":["qam"],"application\/vnd.epson.salt":["slt"],"application\/vnd.epson.ssf":["ssf"],"application\/vnd.eszigno3+xml":["es3","et3"],"application\/vnd.ezpix-album":["ez2"],"application\/vnd.ezpix-package":["ez3"],"application\/vnd.fdf":["fdf"],"application\/vnd.fdsn.mseed":["mseed"],"application\/vnd.fdsn.seed":["seed","dataless"],"application\/vnd.flographit":["gph"],"application\/vnd.fluxtime.clip":["ftc"],"application\/vnd.framemaker":["fm","frame","maker","book"],"application\/vnd.frogans.fnc":["fnc"],"application\/vnd.frogans.ltf":["ltf"],"application\/vnd.fsc.weblaunch":["fsc"],"application\/vnd.fujitsu.oasys":["oas"],"application\/vnd.fujitsu.oasys2":["oa2"],"application\/vnd.fujitsu.oasys3":["oa3"],"application\/vnd.fujitsu.oasysgp":["fg5"],"application\/vnd.fujitsu.oasysprs":["bh2"],"application\/vnd.fujixerox.ddd":["ddd"],"application\/vnd.fujixerox.docuworks":["xdw"],"application\/vnd.fujixerox.docuworks.binder":["xbd"],"application\/vnd.fuzzysheet":["fzs"],"application\/vnd.genomatix.tuxedo":["txd"],"application\/vnd.geogebra.file":["ggb"],"application\/vnd.geogebra.tool":["ggt"],"application\/vnd.geometry-explorer":["gex","gre"],"application\/vnd.geonext":["gxt"],"application\/vnd.geoplan":["g2w"],"application\/vnd.geospace":["g3w"],"application\/vnd.gmx":["gmx"],"application\/vnd.google-earth.kml+xml":["kml"],"application\/vnd.google-earth.kmz":["kmz"],"application\/vnd.grafeq":["gqf","gqs"],"application\/vnd.groove-account":["gac"],"application\/vnd.groove-help":["ghf"],"application\/vnd.groove-identity-message":["gim"],"application\/vnd.groove-injector":["grv"],"application\/vnd.groove-tool-message":["gtm"],"application\/vnd.groove-tool-template":["tpl"],"application\/vnd.groove-vcard":["vcg"],"application\/vnd.hal+xml":["hal"],"application\/vnd.handheld-entertainment+xml":["zmm"],"application\/vnd.hbci":["hbci"],"application\/vnd.hhe.lesson-player":["les"],"application\/vnd.hp-hpgl":["hpgl"],"application\/vnd.hp-hpid":["hpid"],"application\/vnd.hp-hps":["hps"],"application\/vnd.hp-jlyt":["jlt"],"application\/vnd.hp-pcl":["pcl"],"application\/vnd.hp-pclxl":["pclxl"],"application\/vnd.hydrostatix.sof-data":["sfd-hdstx"],"application\/vnd.ibm.minipay":["mpy"],"application\/vnd.ibm.modcap":["afp","listafp","list3820"],"application\/vnd.ibm.rights-management":["irm"],"application\/vnd.ibm.secure-container":["sc"],"application\/vnd.iccprofile":["icc","icm"],"application\/vnd.igloader":["igl"],"application\/vnd.immervision-ivp":["ivp"],"application\/vnd.immervision-ivu":["ivu"],"application\/vnd.insors.igm":["igm"],"application\/vnd.intercon.formnet":["xpw","xpx"],"application\/vnd.intergeo":["i2g"],"application\/vnd.intu.qbo":["qbo"],"application\/vnd.intu.qfx":["qfx"],"application\/vnd.ipunplugged.rcprofile":["rcprofile"],"application\/vnd.irepository.package+xml":["irp"],"application\/vnd.is-xpr":["xpr"],"application\/vnd.isac.fcs":["fcs"],"application\/vnd.jam":["jam"],"application\/vnd.jcp.javame.midlet-rms":["rms"],"application\/vnd.jisp":["jisp"],"application\/vnd.joost.joda-archive":["joda"],"application\/vnd.kahootz":["ktz","ktr"],"application\/vnd.kde.karbon":["karbon"],"application\/vnd.kde.kchart":["chrt"],"application\/vnd.kde.kformula":["kfo"],"application\/vnd.kde.kivio":["flw"],"application\/vnd.kde.kontour":["kon"],"application\/vnd.kde.kpresenter":["kpr","kpt"],"application\/vnd.kde.kspread":["ksp"],"application\/vnd.kde.kword":["kwd","kwt"],"application\/vnd.kenameaapp":["htke"],"application\/vnd.kidspiration":["kia"],"application\/vnd.kinar":["kne","knp"],"application\/vnd.koan":["skp","skd","skt","skm"],"application\/vnd.kodak-descriptor":["sse"],"application\/vnd.las.las+xml":["lasxml"],"application\/vnd.llamagraphics.life-balance.desktop":["lbd"],"application\/vnd.llamagraphics.life-balance.exchange+xml":["lbe"],"application\/vnd.lotus-1-2-3":["123"],"application\/vnd.lotus-approach":["apr"],"application\/vnd.lotus-freelance":["pre"],"application\/vnd.lotus-notes":["nsf"],"application\/vnd.lotus-organizer":["org"],"application\/vnd.lotus-screencam":["scm"],"application\/vnd.lotus-wordpro":["lwp"],"application\/vnd.macports.portpkg":["portpkg"],"application\/vnd.mcd":["mcd"],"application\/vnd.medcalcdata":["mc1"],"application\/vnd.mediastation.cdkey":["cdkey"],"application\/vnd.mfer":["mwf"],"application\/vnd.mfmp":["mfm"],"application\/vnd.micrografx.flo":["flo"],"application\/vnd.micrografx.igx":["igx"],"application\/vnd.mif":["mif"],"application\/vnd.mobius.daf":["daf"],"application\/vnd.mobius.dis":["dis"],"application\/vnd.mobius.mbk":["mbk"],"application\/vnd.mobius.mqy":["mqy"],"application\/vnd.mobius.msl":["msl"],"application\/vnd.mobius.plc":["plc"],"application\/vnd.mobius.txf":["txf"],"application\/vnd.mophun.application":["mpn"],"application\/vnd.mophun.certificate":["mpc"],"application\/vnd.mozilla.xul+xml":["xul"],"application\/vnd.ms-artgalry":["cil"],"application\/vnd.ms-cab-compressed":["cab"],"application\/vnd.ms-excel":["xls","xlm","xla","xlc","xlt","xlw"],"application\/vnd.ms-excel.addin.macroenabled.12":["xlam"],"application\/vnd.ms-excel.sheet.binary.macroenabled.12":["xlsb"],"application\/vnd.ms-excel.sheet.macroenabled.12":["xlsm"],"application\/vnd.ms-excel.template.macroenabled.12":["xltm"],"application\/vnd.ms-fontobject":["eot"],"application\/vnd.ms-htmlhelp":["chm"],"application\/vnd.ms-ims":["ims"],"application\/vnd.ms-lrm":["lrm"],"application\/vnd.ms-officetheme":["thmx"],"application\/vnd.ms-pki.seccat":["cat"],"application\/vnd.ms-pki.stl":["stl"],"application\/vnd.ms-powerpoint":["ppt","pps","pot"],"application\/vnd.ms-powerpoint.addin.macroenabled.12":["ppam"],"application\/vnd.ms-powerpoint.presentation.macroenabled.12":["pptm"],"application\/vnd.ms-powerpoint.slide.macroenabled.12":["sldm"],"application\/vnd.ms-powerpoint.slideshow.macroenabled.12":["ppsm"],"application\/vnd.ms-powerpoint.template.macroenabled.12":["potm"],"application\/vnd.ms-project":["mpp","mpt"],"application\/vnd.ms-word.document.macroenabled.12":["docm"],"application\/vnd.ms-word.template.macroenabled.12":["dotm"],"application\/vnd.ms-works":["wps","wks","wcm","wdb"],"application\/vnd.ms-wpl":["wpl"],"application\/vnd.ms-xpsdocument":["xps"],"application\/vnd.mseq":["mseq"],"application\/vnd.musician":["mus"],"application\/vnd.muvee.style":["msty"],"application\/vnd.mynfc":["taglet"],"application\/vnd.neurolanguage.nlu":["nlu"],"application\/vnd.nitf":["ntf","nitf"],"application\/vnd.noblenet-directory":["nnd"],"application\/vnd.noblenet-sealer":["nns"],"application\/vnd.noblenet-web":["nnw"],"application\/vnd.nokia.n-gage.data":["ngdat"],"application\/vnd.nokia.n-gage.symbian.install":["n-gage"],"application\/vnd.nokia.radio-preset":["rpst"],"application\/vnd.nokia.radio-presets":["rpss"],"application\/vnd.novadigm.edm":["edm"],"application\/vnd.novadigm.edx":["edx"],"application\/vnd.novadigm.ext":["ext"],"application\/vnd.oasis.opendocument.chart":["odc"],"application\/vnd.oasis.opendocument.chart-template":["otc"],"application\/vnd.oasis.opendocument.database":["odb"],"application\/vnd.oasis.opendocument.formula":["odf"],"application\/vnd.oasis.opendocument.formula-template":["odft"],"application\/vnd.oasis.opendocument.graphics":["odg"],"application\/vnd.oasis.opendocument.graphics-template":["otg"],"application\/vnd.oasis.opendocument.image":["odi"],"application\/vnd.oasis.opendocument.image-template":["oti"],"application\/vnd.oasis.opendocument.presentation":["odp"],"application\/vnd.oasis.opendocument.presentation-template":["otp"],"application\/vnd.oasis.opendocument.spreadsheet":["ods"],"application\/vnd.oasis.opendocument.spreadsheet-template":["ots"],"application\/vnd.oasis.opendocument.text":["odt"],"application\/vnd.oasis.opendocument.text-master":["odm"],"application\/vnd.oasis.opendocument.text-template":["ott"],"application\/vnd.oasis.opendocument.text-web":["oth"],"application\/vnd.olpc-sugar":["xo"],"application\/vnd.oma.dd2+xml":["dd2"],"application\/vnd.openofficeorg.extension":["oxt"],"application\/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application\/vnd.openxmlformats-officedocument.presentationml.slide":["sldx"],"application\/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"application\/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"application\/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"application\/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application\/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application\/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"application\/vnd.osgeo.mapguide.package":["mgp"],"application\/vnd.osgi.dp":["dp"],"application\/vnd.osgi.subsystem":["esa"],"application\/vnd.palm":["pdb","pqa","oprc"],"application\/vnd.pawaafile":["paw"],"application\/vnd.pg.format":["str"],"application\/vnd.pg.osasli":["ei6"],"application\/vnd.picsel":["efif"],"application\/vnd.pmi.widget":["wg"],"application\/vnd.pocketlearn":["plf"],"application\/vnd.powerbuilder6":["pbd"],"application\/vnd.previewsystems.box":["box"],"application\/vnd.proteus.magazine":["mgz"],"application\/vnd.publishare-delta-tree":["qps"],"application\/vnd.pvi.ptid1":["ptid"],"application\/vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"application\/vnd.realvnc.bed":["bed"],"application\/vnd.recordare.musicxml":["mxl"],"application\/vnd.recordare.musicxml+xml":["musicxml"],"application\/vnd.rig.cryptonote":["cryptonote"],"application\/vnd.rim.cod":["cod"],"application\/vnd.rn-realmedia":["rm"],"application\/vnd.rn-realmedia-vbr":["rmvb"],"application\/vnd.route66.link66+xml":["link66"],"application\/vnd.sailingtracker.track":["st"],"application\/vnd.seemail":["see"],"application\/vnd.sema":["sema"],"application\/vnd.semd":["semd"],"application\/vnd.semf":["semf"],"application\/vnd.shana.informed.formdata":["ifm"],"application\/vnd.shana.informed.formtemplate":["itp"],"application\/vnd.shana.informed.interchange":["iif"],"application\/vnd.shana.informed.package":["ipk"],"application\/vnd.simtech-mindmapper":["twd","twds"],"application\/vnd.smaf":["mmf"],"application\/vnd.smart.teacher":["teacher"],"application\/vnd.solent.sdkm+xml":["sdkm","sdkd"],"application\/vnd.spotfire.dxp":["dxp"],"application\/vnd.spotfire.sfs":["sfs"],"application\/vnd.stardivision.calc":["sdc"],"application\/vnd.stardivision.draw":["sda"],"application\/vnd.stardivision.impress":["sdd"],"application\/vnd.stardivision.math":["smf"],"application\/vnd.stardivision.writer":["sdw","vor"],"application\/vnd.stardivision.writer-global":["sgl"],"application\/vnd.stepmania.package":["smzip"],"application\/vnd.stepmania.stepchart":["sm"],"application\/vnd.sun.xml.calc":["sxc"],"application\/vnd.sun.xml.calc.template":["stc"],"application\/vnd.sun.xml.draw":["sxd"],"application\/vnd.sun.xml.draw.template":["std"],"application\/vnd.sun.xml.impress":["sxi"],"application\/vnd.sun.xml.impress.template":["sti"],"application\/vnd.sun.xml.math":["sxm"],"application\/vnd.sun.xml.writer":["sxw"],"application\/vnd.sun.xml.writer.global":["sxg"],"application\/vnd.sun.xml.writer.template":["stw"],"application\/vnd.sus-calendar":["sus","susp"],"application\/vnd.svd":["svd"],"application\/vnd.symbian.install":["sis","sisx"],"application\/vnd.syncml+xml":["xsm"],"application\/vnd.syncml.dm+wbxml":["bdm"],"application\/vnd.syncml.dm+xml":["xdm"],"application\/vnd.tao.intent-module-archive":["tao"],"application\/vnd.tcpdump.pcap":["pcap","cap","dmp"],"application\/vnd.tmobile-livetv":["tmo"],"application\/vnd.trid.tpt":["tpt"],"application\/vnd.triscape.mxs":["mxs"],"application\/vnd.trueapp":["tra"],"application\/vnd.ufdl":["ufd","ufdl"],"application\/vnd.uiq.theme":["utz"],"application\/vnd.umajin":["umj"],"application\/vnd.unity":["unityweb"],"application\/vnd.uoml+xml":["uoml"],"application\/vnd.vcx":["vcx"],"application\/vnd.visio":["vsd","vst","vss","vsw"],"application\/vnd.visionary":["vis"],"application\/vnd.vsf":["vsf"],"application\/vnd.wap.wbxml":["wbxml"],"application\/vnd.wap.wmlc":["wmlc"],"application\/vnd.wap.wmlscriptc":["wmlsc"],"application\/vnd.webturbo":["wtb"],"application\/vnd.wolfram.player":["nbp"],"application\/vnd.wordperfect":["wpd"],"application\/vnd.wqd":["wqd"],"application\/vnd.wt.stf":["stf"],"application\/vnd.xara":["xar"],"application\/vnd.xfdl":["xfdl"],"application\/vnd.yamaha.hv-dic":["hvd"],"application\/vnd.yamaha.hv-script":["hvs"],"application\/vnd.yamaha.hv-voice":["hvp"],"application\/vnd.yamaha.openscoreformat":["osf"],"application\/vnd.yamaha.openscoreformat.osfpvg+xml":["osfpvg"],"application\/vnd.yamaha.smaf-audio":["saf"],"application\/vnd.yamaha.smaf-phrase":["spf"],"application\/vnd.yellowriver-custom-menu":["cmp"],"application\/vnd.zul":["zir","zirz"],"application\/vnd.zzazz.deck+xml":["zaz"],"application\/voicexml+xml":["vxml"],"application\/widget":["wgt"],"application\/winhlp":["hlp"],"application\/wsdl+xml":["wsdl"],"application\/wspolicy+xml":["wspolicy"],"application\/x-7z-compressed":["7z"],"application\/x-abiword":["abw"],"application\/x-ace-compressed":["ace"],"application\/x-apple-diskimage":["dmg"],"application\/x-authorware-bin":["aab","x32","u32","vox"],"application\/x-authorware-map":["aam"],"application\/x-authorware-seg":["aas"],"application\/x-bcpio":["bcpio"],"application\/x-bittorrent":["torrent"],"application\/x-blorb":["blb","blorb"],"application\/x-bzip":["bz"],"application\/x-bzip2":["bz2","boz"],"application\/x-cbr":["cbr","cba","cbt","cbz","cb7"],"application\/x-cdlink":["vcd"],"application\/x-cfs-compressed":["cfs"],"application\/x-chat":["chat"],"application\/x-chess-pgn":["pgn"],"application\/x-conference":["nsc"],"application\/x-cpio":["cpio"],"application\/x-csh":["csh"],"application\/x-debian-package":["deb","udeb"],"application\/x-dgc-compressed":["dgc"],"application\/x-director":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"],"application\/x-doom":["wad"],"application\/x-dtbncx+xml":["ncx"],"application\/x-dtbook+xml":["dtb"],"application\/x-dtbresource+xml":["res"],"application\/x-dvi":["dvi"],"application\/x-envoy":["evy"],"application\/x-eva":["eva"],"application\/x-font-bdf":["bdf"],"application\/x-font-ghostscript":["gsf"],"application\/x-font-linux-psf":["psf"],"application\/x-font-otf":["otf"],"application\/x-font-pcf":["pcf"],"application\/x-font-snf":["snf"],"application\/x-font-ttf":["ttf","ttc"],"application\/x-font-type1":["pfa","pfb","pfm","afm"],"application\/x-font-woff":["woff"],"application\/x-freearc":["arc"],"application\/x-futuresplash":["spl"],"application\/x-gca-compressed":["gca"],"application\/x-glulx":["ulx"],"application\/x-gnumeric":["gnumeric"],"application\/x-gramps-xml":["gramps"],"application\/x-gtar":["gtar"],"application\/x-hdf":["hdf"],"application\/x-install-instructions":["install"],"application\/x-iso9660-image":["iso"],"application\/x-java-jnlp-file":["jnlp"],"application\/x-latex":["latex"],"application\/x-lzh-compressed":["lzh","lha"],"application\/x-mie":["mie"],"application\/x-mobipocket-ebook":["prc","mobi"],"application\/x-ms-application":["application"],"application\/x-ms-shortcut":["lnk"],"application\/x-ms-wmd":["wmd"],"application\/x-ms-wmz":["wmz"],"application\/x-ms-xbap":["xbap"],"application\/x-msaccess":["mdb"],"application\/x-msbinder":["obd"],"application\/x-mscardfile":["crd"],"application\/x-msclip":["clp"],"application\/x-msdownload":["exe","dll","com","bat","msi"],"application\/x-msmediaview":["mvb","m13","m14"],"application\/x-msmetafile":["wmf","wmz","emf","emz"],"application\/x-msmoney":["mny"],"application\/x-mspublisher":["pub"],"application\/x-msschedule":["scd"],"application\/x-msterminal":["trm"],"application\/x-mswrite":["wri"],"application\/x-netcdf":["nc","cdf"],"application\/x-nzb":["nzb"],"application\/x-pkcs12":["p12","pfx"],"application\/x-pkcs7-certificates":["p7b","spc"],"application\/x-pkcs7-certreqresp":["p7r"],"application\/x-rar-compressed":["rar"],"application\/x-research-info-systems":["ris"],"application\/x-sh":["sh"],"application\/x-shar":["shar"],"application\/x-shockwave-flash":["swf"],"application\/x-silverlight-app":["xap"],"application\/x-sql":["sql"],"application\/x-stuffit":["sit"],"application\/x-stuffitx":["sitx"],"application\/x-subrip":["srt"],"application\/x-sv4cpio":["sv4cpio"],"application\/x-sv4crc":["sv4crc"],"application\/x-t3vm-image":["t3"],"application\/x-tads":["gam"],"application\/x-tar":["tar"],"application\/x-tcl":["tcl"],"application\/x-tex":["tex"],"application\/x-tex-tfm":["tfm"],"application\/x-texinfo":["texinfo","texi"],"application\/x-tgif":["obj"],"application\/x-ustar":["ustar"],"application\/x-wais-source":["src"],"application\/x-x509-ca-cert":["der","crt"],"application\/x-xfig":["fig"],"application\/x-xliff+xml":["xlf"],"application\/x-xpinstall":["xpi"],"application\/x-xz":["xz"],"application\/x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"application\/xaml+xml":["xaml"],"application\/xcap-diff+xml":["xdf"],"application\/xenc+xml":["xenc"],"application\/xhtml+xml":["xhtml","xht"],"application\/xml":["xml","xsl"],"application\/xml-dtd":["dtd"],"application\/xop+xml":["xop"],"application\/xproc+xml":["xpl"],"application\/xslt+xml":["xslt"],"application\/xspf+xml":["xspf"],"application\/xv+xml":["mxml","xhvml","xvml","xvm"],"application\/yang":["yang"],"application\/yin+xml":["yin"],"application\/zip":["zip","sketch"],"audio\/adpcm":["adp"],"audio\/basic":["au","snd"],"audio\/midi":["mid","midi","kar","rmi"],"audio\/mp4":["mp4a"],"audio\/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio\/ogg":["oga","ogg","spx"],"audio\/s3m":["s3m"],"audio\/silk":["sil"],"audio\/vnd.dece.audio":["uva","uvva"],"audio\/vnd.digital-winds":["eol"],"audio\/vnd.dra":["dra"],"audio\/vnd.dts":["dts"],"audio\/vnd.dts.hd":["dtshd"],"audio\/vnd.lucent.voice":["lvp"],"audio\/vnd.ms-playready.media.pya":["pya"],"audio\/vnd.nuera.ecelp4800":["ecelp4800"],"audio\/vnd.nuera.ecelp7470":["ecelp7470"],"audio\/vnd.nuera.ecelp9600":["ecelp9600"],"audio\/vnd.rip":["rip"],"audio\/webm":["weba"],"audio\/x-aac":["aac"],"audio\/x-aiff":["aif","aiff","aifc"],"audio\/x-caf":["caf"],"audio\/x-flac":["flac"],"audio\/x-matroska":["mka"],"audio\/x-mpegurl":["m3u"],"audio\/x-ms-wax":["wax"],"audio\/x-ms-wma":["wma"],"audio\/x-pn-realaudio":["ram","ra"],"audio\/x-pn-realaudio-plugin":["rmp"],"audio\/x-wav":["wav"],"audio\/xm":["xm"],"chemical\/x-cdx":["cdx"],"chemical\/x-cif":["cif"],"chemical\/x-cmdf":["cmdf"],"chemical\/x-cml":["cml"],"chemical\/x-csml":["csml"],"chemical\/x-xyz":["xyz"],"image\/bmp":["bmp"],"image\/cgm":["cgm"],"image\/g3fax":["g3"],"image\/gif":["gif"],"image\/heic":["heic"],"image\/ief":["ief"],"image\/jpeg":["jpeg","jpg","jpe"],"image\/ktx":["ktx"],"image\/png":["png"],"image\/prs.btif":["btif"],"image\/sgi":["sgi"],"image\/svg+xml":["svg","svgz"],"image\/tiff":["tiff","tif"],"image\/vnd.adobe.photoshop":["psd"],"image\/vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"image\/vnd.dvb.subtitle":["sub"],"image\/vnd.djvu":["djvu","djv"],"image\/vnd.dwg":["dwg"],"image\/vnd.dxf":["dxf"],"image\/vnd.fastbidsheet":["fbs"],"image\/vnd.fpx":["fpx"],"image\/vnd.fst":["fst"],"image\/vnd.fujixerox.edmics-mmr":["mmr"],"image\/vnd.fujixerox.edmics-rlc":["rlc"],"image\/vnd.ms-modi":["mdi"],"image\/vnd.ms-photo":["wdp"],"image\/vnd.net-fpx":["npx"],"image\/vnd.wap.wbmp":["wbmp"],"image\/vnd.xiff":["xif"],"image\/webp":["webp"],"image\/x-3ds":["3ds"],"image\/x-adobe-dng":["dng"],"image\/x-canon-cr2":["cr2"],"image\/x-canon-crw":["crw"],"image\/x-cmu-raster":["ras"],"image\/x-cmx":["cmx"],"image\/x-epson-erf":["erf"],"image\/x-freehand":["fh","fhc","fh4","fh5","fh7"],"image\/x-fuji-raf":["raf"],"image\/x-icon":["ico"],"image\/x-kodak-dcr":["dcr"],"image\/x-kodak-k25":["k25"],"image\/x-kodak-kdc":["kdc"],"image\/x-minolta-mrw":["mrw"],"image\/x-mrsid-image":["sid"],"image\/x-nikon-nef":["nef"],"image\/x-olympus-orf":["orf"],"image\/x-panasonic-raw":["raw"],"image\/x-pcx":["pcx"],"image\/x-pentax-pef":["pef"],"image\/x-pict":["pic","pct"],"image\/x-portable-anymap":["pnm"],"image\/x-portable-bitmap":["pbm"],"image\/x-portable-graymap":["pgm"],"image\/x-portable-pixmap":["ppm"],"image\/x-rgb":["rgb"],"image\/x-sigma-x3f":["x3f"],"image\/x-sony-arw":["arw"],"image\/x-sony-sr2":["sr2"],"image\/x-sony-srf":["srf"],"image\/x-tga":["tga"],"image\/x-xbitmap":["xbm"],"image\/x-xpixmap":["xpm"],"image\/x-xwindowdump":["xwd"],"message\/rfc822":["eml","mime"],"model\/iges":["igs","iges"],"model\/mesh":["msh","mesh","silo"],"model\/vnd.collada+xml":["dae"],"model\/vnd.dwf":["dwf"],"model\/vnd.gdl":["gdl"],"model\/vnd.gtw":["gtw"],"model\/vnd.mts":["mts"],"model\/vnd.vtu":["vtu"],"model\/vrml":["wrl","vrml"],"model\/x3d+binary":["x3db","x3dbz"],"model\/x3d+vrml":["x3dv","x3dvz"],"model\/x3d+xml":["x3d","x3dz"],"text\/cache-manifest":["appcache"],"text\/calendar":["ics","ifb"],"text\/css":["css"],"text\/csv":["csv"],"text\/html":["html","htm"],"text\/n3":["n3"],"text\/plain":["txt","text","conf","def","list","log","in"],"text\/prs.lines.tag":["dsc"],"text\/richtext":["rtx"],"text\/sgml":["sgml","sgm"],"text\/tab-separated-values":["tsv"],"text\/troff":["t","tr","roff","man","me","ms"],"text\/turtle":["ttl"],"text\/uri-list":["uri","uris","urls"],"text\/vcard":["vcard"],"text\/vnd.curl":["curl"],"text\/vnd.curl.dcurl":["dcurl"],"text\/vnd.curl.scurl":["scurl"],"text\/vnd.curl.mcurl":["mcurl"],"text\/vnd.dvb.subtitle":["sub"],"text\/vnd.fly":["fly"],"text\/vnd.fmi.flexstor":["flx"],"text\/vnd.graphviz":["gv"],"text\/vnd.in3d.3dml":["3dml"],"text\/vnd.in3d.spot":["spot"],"text\/vnd.sun.j2me.app-descriptor":["jad"],"text\/vnd.wap.wml":["wml"],"text\/vnd.wap.wmlscript":["wmls"],"text\/x-asm":["s","asm"],"text\/x-c":["c","cc","cxx","cpp","h","hh","dic"],"text\/x-fortran":["f","for","f77","f90"],"text\/x-java-source":["java"],"text\/x-opml":["opml"],"text\/x-pascal":["p","pas"],"text\/x-php":["php","phtml","php3","php4","php5","php7","phps"],"text\/x-nfo":["nfo"],"text\/x-setext":["etx"],"text\/x-sfv":["sfv"],"text\/x-uuencode":["uu"],"text\/x-vcalendar":["vcs"],"text\/x-vcard":["vcf"],"video\/3gpp":["3gp"],"video\/3gpp2":["3g2"],"video\/h261":["h261"],"video\/h263":["h263"],"video\/h264":["h264"],"video\/jpeg":["jpgv"],"video\/jpm":["jpm","jpgm"],"video\/mj2":["mj2","mjp2"],"video\/mp4":["mp4","mp4v","mpg4"],"video\/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video\/ogg":["ogv"],"video\/quicktime":["qt","mov"],"video\/vnd.dece.hd":["uvh","uvvh"],"video\/vnd.dece.mobile":["uvm","uvvm"],"video\/vnd.dece.pd":["uvp","uvvp"],"video\/vnd.dece.sd":["uvs","uvvs"],"video\/vnd.dece.video":["uvv","uvvv"],"video\/vnd.dvb.file":["dvb"],"video\/vnd.fvt":["fvt"],"video\/vnd.mpegurl":["mxu","m4u"],"video\/vnd.ms-playready.media.pyv":["pyv"],"video\/vnd.uvvu.mp4":["uvu","uvvu"],"video\/vnd.vivo":["viv"],"video\/webm":["webm"],"video\/x-f4v":["f4v"],"video\/x-fli":["fli"],"video\/x-flv":["flv"],"video\/x-m4v":["m4v"],"video\/x-matroska":["mkv","mk3d","mks"],"video\/x-mng":["mng"],"video\/x-ms-asf":["asf","asx"],"video\/x-ms-vob":["vob"],"video\/x-ms-wm":["wm"],"video\/x-ms-wmv":["wmv"],"video\/x-ms-wmx":["wmx"],"video\/x-ms-wvx":["wvx"],"video\/x-msvideo":["avi"],"video\/x-sgi-movie":["movie"],"video\/x-smv":["smv"],"x-conference\/x-cooltalk":["ice"]}
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/Resources/mime.types:
--------------------------------------------------------------------------------
1 | # This file maps Internet media types to unique file extension(s).
2 | # Although created for httpd, this file is used by many software systems
3 | # and has been placed in the public domain for unlimited redisribution.
4 | #
5 | # The table below contains both registered and (common) unregistered types.
6 | # A type that has no unique extension can be ignored -- they are listed
7 | # here to guide configurations toward known types and to make it easier to
8 | # identify "new" types. File extensions are also commonly used to indicate
9 | # content languages and encodings, so choose them carefully.
10 | #
11 | # Internet media types should be registered as described in RFC 4288.
12 | # The registry is at .
13 | #
14 | # MIME type (lowercased) Extensions
15 | # ============================================ ==========
16 | # application/1d-interleaved-parityfec
17 | # application/3gpp-ims+xml
18 | # application/activemessage
19 | application/andrew-inset ez
20 | # application/applefile
21 | application/applixware aw
22 | application/atom+xml atom
23 | application/atomcat+xml atomcat
24 | # application/atomicmail
25 | application/atomsvc+xml atomsvc
26 | # application/auth-policy+xml
27 | # application/batch-smtp
28 | # application/beep+xml
29 | # application/calendar+xml
30 | # application/cals-1840
31 | # application/ccmp+xml
32 | application/ccxml+xml ccxml
33 | application/cdmi-capability cdmia
34 | application/cdmi-container cdmic
35 | application/cdmi-domain cdmid
36 | application/cdmi-object cdmio
37 | application/cdmi-queue cdmiq
38 | # application/cea-2018+xml
39 | # application/cellml+xml
40 | # application/cfw
41 | # application/cnrp+xml
42 | # application/commonground
43 | # application/conference-info+xml
44 | # application/cpl+xml
45 | # application/csta+xml
46 | # application/cstadata+xml
47 | application/cu-seeme cu
48 | # application/cybercash
49 | application/davmount+xml davmount
50 | # application/dca-rft
51 | # application/dec-dx
52 | # application/dialog-info+xml
53 | # application/dicom
54 | # application/dns
55 | application/docbook+xml dbk
56 | # application/dskpp+xml
57 | application/dssc+der dssc
58 | application/dssc+xml xdssc
59 | # application/dvcs
60 | application/ecmascript ecma
61 | # application/edi-consent
62 | # application/edi-x12
63 | # application/edifact
64 | application/emma+xml emma
65 | # application/epp+xml
66 | application/epub+zip epub
67 | # application/eshop
68 | # application/example
69 | application/exi exi
70 | # application/fastinfoset
71 | # application/fastsoap
72 | # application/fits
73 | application/font-tdpfr pfr
74 | # application/framework-attributes+xml
75 | application/gml+xml gml
76 | application/gpx+xml gpx
77 | application/gxf gxf
78 | # application/h224
79 | # application/held+xml
80 | # application/http
81 | application/hyperstudio stk
82 | # application/ibe-key-request+xml
83 | # application/ibe-pkg-reply+xml
84 | # application/ibe-pp-data
85 | # application/iges
86 | # application/im-iscomposing+xml
87 | # application/index
88 | # application/index.cmd
89 | # application/index.obj
90 | # application/index.response
91 | # application/index.vnd
92 | application/inkml+xml ink inkml
93 | # application/iotp
94 | application/ipfix ipfix
95 | # application/ipp
96 | # application/isup
97 | application/java-archive jar
98 | application/java-serialized-object ser
99 | application/java-vm class
100 | application/javascript js
101 | application/json json
102 | application/jsonml+json jsonml
103 | # application/kpml-request+xml
104 | # application/kpml-response+xml
105 | application/lost+xml lostxml
106 | application/mac-binhex40 hqx
107 | application/mac-compactpro cpt
108 | # application/macwriteii
109 | application/mads+xml mads
110 | application/marc mrc
111 | application/marcxml+xml mrcx
112 | application/mathematica ma nb mb
113 | # application/mathml-content+xml
114 | # application/mathml-presentation+xml
115 | application/mathml+xml mathml
116 | # application/mbms-associated-procedure-description+xml
117 | # application/mbms-deregister+xml
118 | # application/mbms-envelope+xml
119 | # application/mbms-msk+xml
120 | # application/mbms-msk-response+xml
121 | # application/mbms-protection-description+xml
122 | # application/mbms-reception-report+xml
123 | # application/mbms-register+xml
124 | # application/mbms-register-response+xml
125 | # application/mbms-user-service-description+xml
126 | application/mbox mbox
127 | # application/media_control+xml
128 | application/mediaservercontrol+xml mscml
129 | application/metalink+xml metalink
130 | application/metalink4+xml meta4
131 | application/mets+xml mets
132 | # application/mikey
133 | application/mods+xml mods
134 | # application/moss-keys
135 | # application/moss-signature
136 | # application/mosskey-data
137 | # application/mosskey-request
138 | application/mp21 m21 mp21
139 | application/mp4 mp4s
140 | # application/mpeg4-generic
141 | # application/mpeg4-iod
142 | # application/mpeg4-iod-xmt
143 | # application/msc-ivr+xml
144 | # application/msc-mixer+xml
145 | application/msword doc dot
146 | application/mxf mxf
147 | # application/nasdata
148 | # application/news-checkgroups
149 | # application/news-groupinfo
150 | # application/news-transmission
151 | # application/nss
152 | # application/ocsp-request
153 | # application/ocsp-response
154 | application/octet-stream bin dms lrf mar so dist distz pkg bpk dump elc deploy
155 | application/oda oda
156 | application/oebps-package+xml opf
157 | application/ogg ogx
158 | application/omdoc+xml omdoc
159 | application/onenote onetoc onetoc2 onetmp onepkg
160 | application/oxps oxps
161 | # application/parityfec
162 | application/patch-ops-error+xml xer
163 | application/pdf pdf
164 | application/pgp-encrypted pgp
165 | # application/pgp-keys
166 | application/pgp-signature asc sig
167 | application/pics-rules prf
168 | # application/pidf+xml
169 | # application/pidf-diff+xml
170 | application/pkcs10 p10
171 | application/pkcs7-mime p7m p7c
172 | application/pkcs7-signature p7s
173 | application/pkcs8 p8
174 | application/pkix-attr-cert ac
175 | application/pkix-cert cer
176 | application/pkix-crl crl
177 | application/pkix-pkipath pkipath
178 | application/pkixcmp pki
179 | application/pls+xml pls
180 | # application/poc-settings+xml
181 | application/postscript ai eps ps
182 | # application/prs.alvestrand.titrax-sheet
183 | application/prs.cww cww
184 | # application/prs.nprend
185 | # application/prs.plucker
186 | # application/prs.rdf-xml-crypt
187 | # application/prs.xsf+xml
188 | application/pskc+xml pskcxml
189 | # application/qsig
190 | application/rdf+xml rdf
191 | application/reginfo+xml rif
192 | application/relax-ng-compact-syntax rnc
193 | # application/remote-printing
194 | application/resource-lists+xml rl
195 | application/resource-lists-diff+xml rld
196 | # application/riscos
197 | # application/rlmi+xml
198 | application/rls-services+xml rs
199 | application/rpki-ghostbusters gbr
200 | application/rpki-manifest mft
201 | application/rpki-roa roa
202 | # application/rpki-updown
203 | application/rsd+xml rsd
204 | application/rss+xml rss
205 | application/rtf rtf
206 | # application/rtx
207 | # application/samlassertion+xml
208 | # application/samlmetadata+xml
209 | application/sbml+xml sbml
210 | application/scvp-cv-request scq
211 | application/scvp-cv-response scs
212 | application/scvp-vp-request spq
213 | application/scvp-vp-response spp
214 | application/sdp sdp
215 | # application/set-payment
216 | application/set-payment-initiation setpay
217 | # application/set-registration
218 | application/set-registration-initiation setreg
219 | # application/sgml
220 | # application/sgml-open-catalog
221 | application/shf+xml shf
222 | # application/sieve
223 | # application/simple-filter+xml
224 | # application/simple-message-summary
225 | # application/simplesymbolcontainer
226 | # application/slate
227 | # application/smil
228 | application/smil+xml smi smil
229 | # application/soap+fastinfoset
230 | # application/soap+xml
231 | application/sparql-query rq
232 | application/sparql-results+xml srx
233 | # application/spirits-event+xml
234 | application/srgs gram
235 | application/srgs+xml grxml
236 | application/sru+xml sru
237 | application/ssdl+xml ssdl
238 | application/ssml+xml ssml
239 | # application/tamp-apex-update
240 | # application/tamp-apex-update-confirm
241 | # application/tamp-community-update
242 | # application/tamp-community-update-confirm
243 | # application/tamp-error
244 | # application/tamp-sequence-adjust
245 | # application/tamp-sequence-adjust-confirm
246 | # application/tamp-status-query
247 | # application/tamp-status-response
248 | # application/tamp-update
249 | # application/tamp-update-confirm
250 | application/tei+xml tei teicorpus
251 | application/thraud+xml tfi
252 | # application/timestamp-query
253 | # application/timestamp-reply
254 | application/timestamped-data tsd
255 | # application/tve-trigger
256 | # application/ulpfec
257 | # application/vcard+xml
258 | # application/vemmi
259 | # application/vividence.scriptfile
260 | # application/vnd.3gpp.bsf+xml
261 | application/vnd.3gpp.pic-bw-large plb
262 | application/vnd.3gpp.pic-bw-small psb
263 | application/vnd.3gpp.pic-bw-var pvb
264 | # application/vnd.3gpp.sms
265 | # application/vnd.3gpp2.bcmcsinfo+xml
266 | # application/vnd.3gpp2.sms
267 | application/vnd.3gpp2.tcap tcap
268 | application/vnd.3m.post-it-notes pwn
269 | application/vnd.accpac.simply.aso aso
270 | application/vnd.accpac.simply.imp imp
271 | application/vnd.acucobol acu
272 | application/vnd.acucorp atc acutc
273 | application/vnd.adobe.air-application-installer-package+zip air
274 | application/vnd.adobe.formscentral.fcdt fcdt
275 | application/vnd.adobe.fxp fxp fxpl
276 | # application/vnd.adobe.partial-upload
277 | application/vnd.adobe.xdp+xml xdp
278 | application/vnd.adobe.xfdf xfdf
279 | # application/vnd.aether.imp
280 | # application/vnd.ah-barcode
281 | application/vnd.ahead.space ahead
282 | application/vnd.airzip.filesecure.azf azf
283 | application/vnd.airzip.filesecure.azs azs
284 | application/vnd.amazon.ebook azw
285 | application/vnd.americandynamics.acc acc
286 | application/vnd.amiga.ami ami
287 | # application/vnd.amundsen.maze+xml
288 | application/vnd.android.package-archive apk
289 | application/vnd.anser-web-certificate-issue-initiation cii
290 | application/vnd.anser-web-funds-transfer-initiation fti
291 | application/vnd.antix.game-component atx
292 | application/vnd.apple.installer+xml mpkg
293 | application/vnd.apple.mpegurl m3u8
294 | # application/vnd.arastra.swi
295 | application/vnd.aristanetworks.swi swi
296 | application/vnd.astraea-software.iota iota
297 | application/vnd.audiograph aep
298 | # application/vnd.autopackage
299 | # application/vnd.avistar+xml
300 | application/vnd.blueice.multipass mpm
301 | # application/vnd.bluetooth.ep.oob
302 | application/vnd.bmi bmi
303 | application/vnd.businessobjects rep
304 | # application/vnd.cab-jscript
305 | # application/vnd.canon-cpdl
306 | # application/vnd.canon-lips
307 | # application/vnd.cendio.thinlinc.clientconf
308 | application/vnd.chemdraw+xml cdxml
309 | application/vnd.chipnuts.karaoke-mmd mmd
310 | application/vnd.cinderella cdy
311 | # application/vnd.cirpack.isdn-ext
312 | application/vnd.claymore cla
313 | application/vnd.cloanto.rp9 rp9
314 | application/vnd.clonk.c4group c4g c4d c4f c4p c4u
315 | application/vnd.cluetrust.cartomobile-config c11amc
316 | application/vnd.cluetrust.cartomobile-config-pkg c11amz
317 | # application/vnd.collection+json
318 | # application/vnd.commerce-battelle
319 | application/vnd.commonspace csp
320 | application/vnd.contact.cmsg cdbcmsg
321 | application/vnd.cosmocaller cmc
322 | application/vnd.crick.clicker clkx
323 | application/vnd.crick.clicker.keyboard clkk
324 | application/vnd.crick.clicker.palette clkp
325 | application/vnd.crick.clicker.template clkt
326 | application/vnd.crick.clicker.wordbank clkw
327 | application/vnd.criticaltools.wbs+xml wbs
328 | application/vnd.ctc-posml pml
329 | # application/vnd.ctct.ws+xml
330 | # application/vnd.cups-pdf
331 | # application/vnd.cups-postscript
332 | application/vnd.cups-ppd ppd
333 | # application/vnd.cups-raster
334 | # application/vnd.cups-raw
335 | # application/vnd.curl
336 | application/vnd.curl.car car
337 | application/vnd.curl.pcurl pcurl
338 | # application/vnd.cybank
339 | application/vnd.dart dart
340 | application/vnd.data-vision.rdz rdz
341 | application/vnd.dece.data uvf uvvf uvd uvvd
342 | application/vnd.dece.ttml+xml uvt uvvt
343 | application/vnd.dece.unspecified uvx uvvx
344 | application/vnd.dece.zip uvz uvvz
345 | application/vnd.denovo.fcselayout-link fe_launch
346 | # application/vnd.dir-bi.plate-dl-nosuffix
347 | application/vnd.dna dna
348 | application/vnd.dolby.mlp mlp
349 | # application/vnd.dolby.mobile.1
350 | # application/vnd.dolby.mobile.2
351 | application/vnd.dpgraph dpg
352 | application/vnd.dreamfactory dfac
353 | application/vnd.ds-keypoint kpxx
354 | application/vnd.dvb.ait ait
355 | # application/vnd.dvb.dvbj
356 | # application/vnd.dvb.esgcontainer
357 | # application/vnd.dvb.ipdcdftnotifaccess
358 | # application/vnd.dvb.ipdcesgaccess
359 | # application/vnd.dvb.ipdcesgaccess2
360 | # application/vnd.dvb.ipdcesgpdd
361 | # application/vnd.dvb.ipdcroaming
362 | # application/vnd.dvb.iptv.alfec-base
363 | # application/vnd.dvb.iptv.alfec-enhancement
364 | # application/vnd.dvb.notif-aggregate-root+xml
365 | # application/vnd.dvb.notif-container+xml
366 | # application/vnd.dvb.notif-generic+xml
367 | # application/vnd.dvb.notif-ia-msglist+xml
368 | # application/vnd.dvb.notif-ia-registration-request+xml
369 | # application/vnd.dvb.notif-ia-registration-response+xml
370 | # application/vnd.dvb.notif-init+xml
371 | # application/vnd.dvb.pfr
372 | application/vnd.dvb.service svc
373 | # application/vnd.dxr
374 | application/vnd.dynageo geo
375 | # application/vnd.easykaraoke.cdgdownload
376 | # application/vnd.ecdis-update
377 | application/vnd.ecowin.chart mag
378 | # application/vnd.ecowin.filerequest
379 | # application/vnd.ecowin.fileupdate
380 | # application/vnd.ecowin.series
381 | # application/vnd.ecowin.seriesrequest
382 | # application/vnd.ecowin.seriesupdate
383 | # application/vnd.emclient.accessrequest+xml
384 | application/vnd.enliven nml
385 | # application/vnd.eprints.data+xml
386 | application/vnd.epson.esf esf
387 | application/vnd.epson.msf msf
388 | application/vnd.epson.quickanime qam
389 | application/vnd.epson.salt slt
390 | application/vnd.epson.ssf ssf
391 | # application/vnd.ericsson.quickcall
392 | application/vnd.eszigno3+xml es3 et3
393 | # application/vnd.etsi.aoc+xml
394 | # application/vnd.etsi.cug+xml
395 | # application/vnd.etsi.iptvcommand+xml
396 | # application/vnd.etsi.iptvdiscovery+xml
397 | # application/vnd.etsi.iptvprofile+xml
398 | # application/vnd.etsi.iptvsad-bc+xml
399 | # application/vnd.etsi.iptvsad-cod+xml
400 | # application/vnd.etsi.iptvsad-npvr+xml
401 | # application/vnd.etsi.iptvservice+xml
402 | # application/vnd.etsi.iptvsync+xml
403 | # application/vnd.etsi.iptvueprofile+xml
404 | # application/vnd.etsi.mcid+xml
405 | # application/vnd.etsi.overload-control-policy-dataset+xml
406 | # application/vnd.etsi.sci+xml
407 | # application/vnd.etsi.simservs+xml
408 | # application/vnd.etsi.tsl+xml
409 | # application/vnd.etsi.tsl.der
410 | # application/vnd.eudora.data
411 | application/vnd.ezpix-album ez2
412 | application/vnd.ezpix-package ez3
413 | # application/vnd.f-secure.mobile
414 | application/vnd.fdf fdf
415 | application/vnd.fdsn.mseed mseed
416 | application/vnd.fdsn.seed seed dataless
417 | # application/vnd.ffsns
418 | # application/vnd.fints
419 | application/vnd.flographit gph
420 | application/vnd.fluxtime.clip ftc
421 | # application/vnd.font-fontforge-sfd
422 | application/vnd.framemaker fm frame maker book
423 | application/vnd.frogans.fnc fnc
424 | application/vnd.frogans.ltf ltf
425 | application/vnd.fsc.weblaunch fsc
426 | application/vnd.fujitsu.oasys oas
427 | application/vnd.fujitsu.oasys2 oa2
428 | application/vnd.fujitsu.oasys3 oa3
429 | application/vnd.fujitsu.oasysgp fg5
430 | application/vnd.fujitsu.oasysprs bh2
431 | # application/vnd.fujixerox.art-ex
432 | # application/vnd.fujixerox.art4
433 | # application/vnd.fujixerox.hbpl
434 | application/vnd.fujixerox.ddd ddd
435 | application/vnd.fujixerox.docuworks xdw
436 | application/vnd.fujixerox.docuworks.binder xbd
437 | # application/vnd.fut-misnet
438 | application/vnd.fuzzysheet fzs
439 | application/vnd.genomatix.tuxedo txd
440 | # application/vnd.geocube+xml
441 | application/vnd.geogebra.file ggb
442 | application/vnd.geogebra.tool ggt
443 | application/vnd.geometry-explorer gex gre
444 | application/vnd.geonext gxt
445 | application/vnd.geoplan g2w
446 | application/vnd.geospace g3w
447 | # application/vnd.globalplatform.card-content-mgt
448 | # application/vnd.globalplatform.card-content-mgt-response
449 | application/vnd.gmx gmx
450 | application/vnd.google-earth.kml+xml kml
451 | application/vnd.google-earth.kmz kmz
452 | application/vnd.grafeq gqf gqs
453 | # application/vnd.gridmp
454 | application/vnd.groove-account gac
455 | application/vnd.groove-help ghf
456 | application/vnd.groove-identity-message gim
457 | application/vnd.groove-injector grv
458 | application/vnd.groove-tool-message gtm
459 | application/vnd.groove-tool-template tpl
460 | application/vnd.groove-vcard vcg
461 | # application/vnd.hal+json
462 | application/vnd.hal+xml hal
463 | application/vnd.handheld-entertainment+xml zmm
464 | application/vnd.hbci hbci
465 | # application/vnd.hcl-bireports
466 | application/vnd.hhe.lesson-player les
467 | application/vnd.hp-hpgl hpgl
468 | application/vnd.hp-hpid hpid
469 | application/vnd.hp-hps hps
470 | application/vnd.hp-jlyt jlt
471 | application/vnd.hp-pcl pcl
472 | application/vnd.hp-pclxl pclxl
473 | # application/vnd.httphone
474 | application/vnd.hydrostatix.sof-data sfd-hdstx
475 | # application/vnd.hzn-3d-crossword
476 | # application/vnd.ibm.afplinedata
477 | # application/vnd.ibm.electronic-media
478 | application/vnd.ibm.minipay mpy
479 | application/vnd.ibm.modcap afp listafp list3820
480 | application/vnd.ibm.rights-management irm
481 | application/vnd.ibm.secure-container sc
482 | application/vnd.iccprofile icc icm
483 | application/vnd.igloader igl
484 | application/vnd.immervision-ivp ivp
485 | application/vnd.immervision-ivu ivu
486 | # application/vnd.informedcontrol.rms+xml
487 | # application/vnd.informix-visionary
488 | # application/vnd.infotech.project
489 | # application/vnd.infotech.project+xml
490 | # application/vnd.innopath.wamp.notification
491 | application/vnd.insors.igm igm
492 | application/vnd.intercon.formnet xpw xpx
493 | application/vnd.intergeo i2g
494 | # application/vnd.intertrust.digibox
495 | # application/vnd.intertrust.nncp
496 | application/vnd.intu.qbo qbo
497 | application/vnd.intu.qfx qfx
498 | # application/vnd.iptc.g2.conceptitem+xml
499 | # application/vnd.iptc.g2.knowledgeitem+xml
500 | # application/vnd.iptc.g2.newsitem+xml
501 | # application/vnd.iptc.g2.newsmessage+xml
502 | # application/vnd.iptc.g2.packageitem+xml
503 | # application/vnd.iptc.g2.planningitem+xml
504 | application/vnd.ipunplugged.rcprofile rcprofile
505 | application/vnd.irepository.package+xml irp
506 | application/vnd.is-xpr xpr
507 | application/vnd.isac.fcs fcs
508 | application/vnd.jam jam
509 | # application/vnd.japannet-directory-service
510 | # application/vnd.japannet-jpnstore-wakeup
511 | # application/vnd.japannet-payment-wakeup
512 | # application/vnd.japannet-registration
513 | # application/vnd.japannet-registration-wakeup
514 | # application/vnd.japannet-setstore-wakeup
515 | # application/vnd.japannet-verification
516 | # application/vnd.japannet-verification-wakeup
517 | application/vnd.jcp.javame.midlet-rms rms
518 | application/vnd.jisp jisp
519 | application/vnd.joost.joda-archive joda
520 | application/vnd.kahootz ktz ktr
521 | application/vnd.kde.karbon karbon
522 | application/vnd.kde.kchart chrt
523 | application/vnd.kde.kformula kfo
524 | application/vnd.kde.kivio flw
525 | application/vnd.kde.kontour kon
526 | application/vnd.kde.kpresenter kpr kpt
527 | application/vnd.kde.kspread ksp
528 | application/vnd.kde.kword kwd kwt
529 | application/vnd.kenameaapp htke
530 | application/vnd.kidspiration kia
531 | application/vnd.kinar kne knp
532 | application/vnd.koan skp skd skt skm
533 | application/vnd.kodak-descriptor sse
534 | application/vnd.las.las+xml lasxml
535 | # application/vnd.liberty-request+xml
536 | application/vnd.llamagraphics.life-balance.desktop lbd
537 | application/vnd.llamagraphics.life-balance.exchange+xml lbe
538 | application/vnd.lotus-1-2-3 123
539 | application/vnd.lotus-approach apr
540 | application/vnd.lotus-freelance pre
541 | application/vnd.lotus-notes nsf
542 | application/vnd.lotus-organizer org
543 | application/vnd.lotus-screencam scm
544 | application/vnd.lotus-wordpro lwp
545 | application/vnd.macports.portpkg portpkg
546 | # application/vnd.marlin.drm.actiontoken+xml
547 | # application/vnd.marlin.drm.conftoken+xml
548 | # application/vnd.marlin.drm.license+xml
549 | # application/vnd.marlin.drm.mdcf
550 | application/vnd.mcd mcd
551 | application/vnd.medcalcdata mc1
552 | application/vnd.mediastation.cdkey cdkey
553 | # application/vnd.meridian-slingshot
554 | application/vnd.mfer mwf
555 | application/vnd.mfmp mfm
556 | application/vnd.micrografx.flo flo
557 | application/vnd.micrografx.igx igx
558 | application/vnd.mif mif
559 | # application/vnd.minisoft-hp3000-save
560 | # application/vnd.mitsubishi.misty-guard.trustweb
561 | application/vnd.mobius.daf daf
562 | application/vnd.mobius.dis dis
563 | application/vnd.mobius.mbk mbk
564 | application/vnd.mobius.mqy mqy
565 | application/vnd.mobius.msl msl
566 | application/vnd.mobius.plc plc
567 | application/vnd.mobius.txf txf
568 | application/vnd.mophun.application mpn
569 | application/vnd.mophun.certificate mpc
570 | # application/vnd.motorola.flexsuite
571 | # application/vnd.motorola.flexsuite.adsi
572 | # application/vnd.motorola.flexsuite.fis
573 | # application/vnd.motorola.flexsuite.gotap
574 | # application/vnd.motorola.flexsuite.kmr
575 | # application/vnd.motorola.flexsuite.ttc
576 | # application/vnd.motorola.flexsuite.wem
577 | # application/vnd.motorola.iprm
578 | application/vnd.mozilla.xul+xml xul
579 | application/vnd.ms-artgalry cil
580 | # application/vnd.ms-asf
581 | application/vnd.ms-cab-compressed cab
582 | # application/vnd.ms-color.iccprofile
583 | application/vnd.ms-excel xls xlm xla xlc xlt xlw
584 | application/vnd.ms-excel.addin.macroenabled.12 xlam
585 | application/vnd.ms-excel.sheet.binary.macroenabled.12 xlsb
586 | application/vnd.ms-excel.sheet.macroenabled.12 xlsm
587 | application/vnd.ms-excel.template.macroenabled.12 xltm
588 | application/vnd.ms-fontobject eot
589 | application/vnd.ms-htmlhelp chm
590 | application/vnd.ms-ims ims
591 | application/vnd.ms-lrm lrm
592 | # application/vnd.ms-office.activex+xml
593 | application/vnd.ms-officetheme thmx
594 | # application/vnd.ms-opentype
595 | # application/vnd.ms-package.obfuscated-opentype
596 | application/vnd.ms-pki.seccat cat
597 | application/vnd.ms-pki.stl stl
598 | # application/vnd.ms-playready.initiator+xml
599 | application/vnd.ms-powerpoint ppt pps pot
600 | application/vnd.ms-powerpoint.addin.macroenabled.12 ppam
601 | application/vnd.ms-powerpoint.presentation.macroenabled.12 pptm
602 | application/vnd.ms-powerpoint.slide.macroenabled.12 sldm
603 | application/vnd.ms-powerpoint.slideshow.macroenabled.12 ppsm
604 | application/vnd.ms-powerpoint.template.macroenabled.12 potm
605 | # application/vnd.ms-printing.printticket+xml
606 | application/vnd.ms-project mpp mpt
607 | # application/vnd.ms-tnef
608 | # application/vnd.ms-wmdrm.lic-chlg-req
609 | # application/vnd.ms-wmdrm.lic-resp
610 | # application/vnd.ms-wmdrm.meter-chlg-req
611 | # application/vnd.ms-wmdrm.meter-resp
612 | application/vnd.ms-word.document.macroenabled.12 docm
613 | application/vnd.ms-word.template.macroenabled.12 dotm
614 | application/vnd.ms-works wps wks wcm wdb
615 | application/vnd.ms-wpl wpl
616 | application/vnd.ms-xpsdocument xps
617 | application/vnd.mseq mseq
618 | # application/vnd.msign
619 | # application/vnd.multiad.creator
620 | # application/vnd.multiad.creator.cif
621 | # application/vnd.music-niff
622 | application/vnd.musician mus
623 | application/vnd.muvee.style msty
624 | application/vnd.mynfc taglet
625 | # application/vnd.ncd.control
626 | # application/vnd.ncd.reference
627 | # application/vnd.nervana
628 | # application/vnd.netfpx
629 | application/vnd.neurolanguage.nlu nlu
630 | application/vnd.nitf ntf nitf
631 | application/vnd.noblenet-directory nnd
632 | application/vnd.noblenet-sealer nns
633 | application/vnd.noblenet-web nnw
634 | # application/vnd.nokia.catalogs
635 | # application/vnd.nokia.conml+wbxml
636 | # application/vnd.nokia.conml+xml
637 | # application/vnd.nokia.isds-radio-presets
638 | # application/vnd.nokia.iptv.config+xml
639 | # application/vnd.nokia.landmark+wbxml
640 | # application/vnd.nokia.landmark+xml
641 | # application/vnd.nokia.landmarkcollection+xml
642 | # application/vnd.nokia.n-gage.ac+xml
643 | application/vnd.nokia.n-gage.data ngdat
644 | application/vnd.nokia.n-gage.symbian.install n-gage
645 | # application/vnd.nokia.ncd
646 | # application/vnd.nokia.pcd+wbxml
647 | # application/vnd.nokia.pcd+xml
648 | application/vnd.nokia.radio-preset rpst
649 | application/vnd.nokia.radio-presets rpss
650 | application/vnd.novadigm.edm edm
651 | application/vnd.novadigm.edx edx
652 | application/vnd.novadigm.ext ext
653 | # application/vnd.ntt-local.file-transfer
654 | # application/vnd.ntt-local.sip-ta_remote
655 | # application/vnd.ntt-local.sip-ta_tcp_stream
656 | application/vnd.oasis.opendocument.chart odc
657 | application/vnd.oasis.opendocument.chart-template otc
658 | application/vnd.oasis.opendocument.database odb
659 | application/vnd.oasis.opendocument.formula odf
660 | application/vnd.oasis.opendocument.formula-template odft
661 | application/vnd.oasis.opendocument.graphics odg
662 | application/vnd.oasis.opendocument.graphics-template otg
663 | application/vnd.oasis.opendocument.image odi
664 | application/vnd.oasis.opendocument.image-template oti
665 | application/vnd.oasis.opendocument.presentation odp
666 | application/vnd.oasis.opendocument.presentation-template otp
667 | application/vnd.oasis.opendocument.spreadsheet ods
668 | application/vnd.oasis.opendocument.spreadsheet-template ots
669 | application/vnd.oasis.opendocument.text odt
670 | application/vnd.oasis.opendocument.text-master odm
671 | application/vnd.oasis.opendocument.text-template ott
672 | application/vnd.oasis.opendocument.text-web oth
673 | # application/vnd.obn
674 | # application/vnd.oftn.l10n+json
675 | # application/vnd.oipf.contentaccessdownload+xml
676 | # application/vnd.oipf.contentaccessstreaming+xml
677 | # application/vnd.oipf.cspg-hexbinary
678 | # application/vnd.oipf.dae.svg+xml
679 | # application/vnd.oipf.dae.xhtml+xml
680 | # application/vnd.oipf.mippvcontrolmessage+xml
681 | # application/vnd.oipf.pae.gem
682 | # application/vnd.oipf.spdiscovery+xml
683 | # application/vnd.oipf.spdlist+xml
684 | # application/vnd.oipf.ueprofile+xml
685 | # application/vnd.oipf.userprofile+xml
686 | application/vnd.olpc-sugar xo
687 | # application/vnd.oma-scws-config
688 | # application/vnd.oma-scws-http-request
689 | # application/vnd.oma-scws-http-response
690 | # application/vnd.oma.bcast.associated-procedure-parameter+xml
691 | # application/vnd.oma.bcast.drm-trigger+xml
692 | # application/vnd.oma.bcast.imd+xml
693 | # application/vnd.oma.bcast.ltkm
694 | # application/vnd.oma.bcast.notification+xml
695 | # application/vnd.oma.bcast.provisioningtrigger
696 | # application/vnd.oma.bcast.sgboot
697 | # application/vnd.oma.bcast.sgdd+xml
698 | # application/vnd.oma.bcast.sgdu
699 | # application/vnd.oma.bcast.simple-symbol-container
700 | # application/vnd.oma.bcast.smartcard-trigger+xml
701 | # application/vnd.oma.bcast.sprov+xml
702 | # application/vnd.oma.bcast.stkm
703 | # application/vnd.oma.cab-address-book+xml
704 | # application/vnd.oma.cab-feature-handler+xml
705 | # application/vnd.oma.cab-pcc+xml
706 | # application/vnd.oma.cab-user-prefs+xml
707 | # application/vnd.oma.dcd
708 | # application/vnd.oma.dcdc
709 | application/vnd.oma.dd2+xml dd2
710 | # application/vnd.oma.drm.risd+xml
711 | # application/vnd.oma.group-usage-list+xml
712 | # application/vnd.oma.pal+xml
713 | # application/vnd.oma.poc.detailed-progress-report+xml
714 | # application/vnd.oma.poc.final-report+xml
715 | # application/vnd.oma.poc.groups+xml
716 | # application/vnd.oma.poc.invocation-descriptor+xml
717 | # application/vnd.oma.poc.optimized-progress-report+xml
718 | # application/vnd.oma.push
719 | # application/vnd.oma.scidm.messages+xml
720 | # application/vnd.oma.xcap-directory+xml
721 | # application/vnd.omads-email+xml
722 | # application/vnd.omads-file+xml
723 | # application/vnd.omads-folder+xml
724 | # application/vnd.omaloc-supl-init
725 | application/vnd.openofficeorg.extension oxt
726 | # application/vnd.openxmlformats-officedocument.custom-properties+xml
727 | # application/vnd.openxmlformats-officedocument.customxmlproperties+xml
728 | # application/vnd.openxmlformats-officedocument.drawing+xml
729 | # application/vnd.openxmlformats-officedocument.drawingml.chart+xml
730 | # application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml
731 | # application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml
732 | # application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml
733 | # application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml
734 | # application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml
735 | # application/vnd.openxmlformats-officedocument.extended-properties+xml
736 | # application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml
737 | # application/vnd.openxmlformats-officedocument.presentationml.comments+xml
738 | # application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml
739 | # application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml
740 | # application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml
741 | application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
742 | # application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml
743 | # application/vnd.openxmlformats-officedocument.presentationml.presprops+xml
744 | application/vnd.openxmlformats-officedocument.presentationml.slide sldx
745 | # application/vnd.openxmlformats-officedocument.presentationml.slide+xml
746 | # application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml
747 | # application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml
748 | application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx
749 | # application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml
750 | # application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml
751 | # application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml
752 | # application/vnd.openxmlformats-officedocument.presentationml.tags+xml
753 | application/vnd.openxmlformats-officedocument.presentationml.template potx
754 | # application/vnd.openxmlformats-officedocument.presentationml.template.main+xml
755 | # application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml
756 | # application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml
757 | # application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml
758 | # application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml
759 | # application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml
760 | # application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml
761 | # application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml
762 | # application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml
763 | # application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml
764 | # application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml
765 | # application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml
766 | # application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml
767 | # application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml
768 | # application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml
769 | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx
770 | # application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml
771 | # application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml
772 | # application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml
773 | # application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml
774 | # application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml
775 | application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx
776 | # application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml
777 | # application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml
778 | # application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml
779 | # application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml
780 | # application/vnd.openxmlformats-officedocument.theme+xml
781 | # application/vnd.openxmlformats-officedocument.themeoverride+xml
782 | # application/vnd.openxmlformats-officedocument.vmldrawing
783 | # application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml
784 | application/vnd.openxmlformats-officedocument.wordprocessingml.document docx
785 | # application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml
786 | # application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml
787 | # application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml
788 | # application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml
789 | # application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml
790 | # application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml
791 | # application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml
792 | # application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml
793 | # application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml
794 | application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx
795 | # application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml
796 | # application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml
797 | # application/vnd.openxmlformats-package.core-properties+xml
798 | # application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml
799 | # application/vnd.openxmlformats-package.relationships+xml
800 | # application/vnd.quobject-quoxdocument
801 | # application/vnd.osa.netdeploy
802 | application/vnd.osgeo.mapguide.package mgp
803 | # application/vnd.osgi.bundle
804 | application/vnd.osgi.dp dp
805 | application/vnd.osgi.subsystem esa
806 | # application/vnd.otps.ct-kip+xml
807 | application/vnd.palm pdb pqa oprc
808 | # application/vnd.paos.xml
809 | application/vnd.pawaafile paw
810 | application/vnd.pg.format str
811 | application/vnd.pg.osasli ei6
812 | # application/vnd.piaccess.application-licence
813 | application/vnd.picsel efif
814 | application/vnd.pmi.widget wg
815 | # application/vnd.poc.group-advertisement+xml
816 | application/vnd.pocketlearn plf
817 | application/vnd.powerbuilder6 pbd
818 | # application/vnd.powerbuilder6-s
819 | # application/vnd.powerbuilder7
820 | # application/vnd.powerbuilder7-s
821 | # application/vnd.powerbuilder75
822 | # application/vnd.powerbuilder75-s
823 | # application/vnd.preminet
824 | application/vnd.previewsystems.box box
825 | application/vnd.proteus.magazine mgz
826 | application/vnd.publishare-delta-tree qps
827 | application/vnd.pvi.ptid1 ptid
828 | # application/vnd.pwg-multiplexed
829 | # application/vnd.pwg-xhtml-print+xml
830 | # application/vnd.qualcomm.brew-app-res
831 | application/vnd.quark.quarkxpress qxd qxt qwd qwt qxl qxb
832 | # application/vnd.radisys.moml+xml
833 | # application/vnd.radisys.msml+xml
834 | # application/vnd.radisys.msml-audit+xml
835 | # application/vnd.radisys.msml-audit-conf+xml
836 | # application/vnd.radisys.msml-audit-conn+xml
837 | # application/vnd.radisys.msml-audit-dialog+xml
838 | # application/vnd.radisys.msml-audit-stream+xml
839 | # application/vnd.radisys.msml-conf+xml
840 | # application/vnd.radisys.msml-dialog+xml
841 | # application/vnd.radisys.msml-dialog-base+xml
842 | # application/vnd.radisys.msml-dialog-fax-detect+xml
843 | # application/vnd.radisys.msml-dialog-fax-sendrecv+xml
844 | # application/vnd.radisys.msml-dialog-group+xml
845 | # application/vnd.radisys.msml-dialog-speech+xml
846 | # application/vnd.radisys.msml-dialog-transform+xml
847 | # application/vnd.rainstor.data
848 | # application/vnd.rapid
849 | application/vnd.realvnc.bed bed
850 | application/vnd.recordare.musicxml mxl
851 | application/vnd.recordare.musicxml+xml musicxml
852 | # application/vnd.renlearn.rlprint
853 | application/vnd.rig.cryptonote cryptonote
854 | application/vnd.rim.cod cod
855 | application/vnd.rn-realmedia rm
856 | application/vnd.rn-realmedia-vbr rmvb
857 | application/vnd.route66.link66+xml link66
858 | # application/vnd.rs-274x
859 | # application/vnd.ruckus.download
860 | # application/vnd.s3sms
861 | application/vnd.sailingtracker.track st
862 | # application/vnd.sbm.cid
863 | # application/vnd.sbm.mid2
864 | # application/vnd.scribus
865 | # application/vnd.sealed.3df
866 | # application/vnd.sealed.csf
867 | # application/vnd.sealed.doc
868 | # application/vnd.sealed.eml
869 | # application/vnd.sealed.mht
870 | # application/vnd.sealed.net
871 | # application/vnd.sealed.ppt
872 | # application/vnd.sealed.tiff
873 | # application/vnd.sealed.xls
874 | # application/vnd.sealedmedia.softseal.html
875 | # application/vnd.sealedmedia.softseal.pdf
876 | application/vnd.seemail see
877 | application/vnd.sema sema
878 | application/vnd.semd semd
879 | application/vnd.semf semf
880 | application/vnd.shana.informed.formdata ifm
881 | application/vnd.shana.informed.formtemplate itp
882 | application/vnd.shana.informed.interchange iif
883 | application/vnd.shana.informed.package ipk
884 | application/vnd.simtech-mindmapper twd twds
885 | application/vnd.smaf mmf
886 | # application/vnd.smart.notebook
887 | application/vnd.smart.teacher teacher
888 | # application/vnd.software602.filler.form+xml
889 | # application/vnd.software602.filler.form-xml-zip
890 | application/vnd.solent.sdkm+xml sdkm sdkd
891 | application/vnd.spotfire.dxp dxp
892 | application/vnd.spotfire.sfs sfs
893 | # application/vnd.sss-cod
894 | # application/vnd.sss-dtf
895 | # application/vnd.sss-ntf
896 | application/vnd.stardivision.calc sdc
897 | application/vnd.stardivision.draw sda
898 | application/vnd.stardivision.impress sdd
899 | application/vnd.stardivision.math smf
900 | application/vnd.stardivision.writer sdw vor
901 | application/vnd.stardivision.writer-global sgl
902 | application/vnd.stepmania.package smzip
903 | application/vnd.stepmania.stepchart sm
904 | # application/vnd.street-stream
905 | application/vnd.sun.xml.calc sxc
906 | application/vnd.sun.xml.calc.template stc
907 | application/vnd.sun.xml.draw sxd
908 | application/vnd.sun.xml.draw.template std
909 | application/vnd.sun.xml.impress sxi
910 | application/vnd.sun.xml.impress.template sti
911 | application/vnd.sun.xml.math sxm
912 | application/vnd.sun.xml.writer sxw
913 | application/vnd.sun.xml.writer.global sxg
914 | application/vnd.sun.xml.writer.template stw
915 | # application/vnd.sun.wadl+xml
916 | application/vnd.sus-calendar sus susp
917 | application/vnd.svd svd
918 | # application/vnd.swiftview-ics
919 | application/vnd.symbian.install sis sisx
920 | application/vnd.syncml+xml xsm
921 | application/vnd.syncml.dm+wbxml bdm
922 | application/vnd.syncml.dm+xml xdm
923 | # application/vnd.syncml.dm.notification
924 | # application/vnd.syncml.ds.notification
925 | application/vnd.tao.intent-module-archive tao
926 | application/vnd.tcpdump.pcap pcap cap dmp
927 | application/vnd.tmobile-livetv tmo
928 | application/vnd.trid.tpt tpt
929 | application/vnd.triscape.mxs mxs
930 | application/vnd.trueapp tra
931 | # application/vnd.truedoc
932 | # application/vnd.ubisoft.webplayer
933 | application/vnd.ufdl ufd ufdl
934 | application/vnd.uiq.theme utz
935 | application/vnd.umajin umj
936 | application/vnd.unity unityweb
937 | application/vnd.uoml+xml uoml
938 | # application/vnd.uplanet.alert
939 | # application/vnd.uplanet.alert-wbxml
940 | # application/vnd.uplanet.bearer-choice
941 | # application/vnd.uplanet.bearer-choice-wbxml
942 | # application/vnd.uplanet.cacheop
943 | # application/vnd.uplanet.cacheop-wbxml
944 | # application/vnd.uplanet.channel
945 | # application/vnd.uplanet.channel-wbxml
946 | # application/vnd.uplanet.list
947 | # application/vnd.uplanet.list-wbxml
948 | # application/vnd.uplanet.listcmd
949 | # application/vnd.uplanet.listcmd-wbxml
950 | # application/vnd.uplanet.signal
951 | application/vnd.vcx vcx
952 | # application/vnd.vd-study
953 | # application/vnd.vectorworks
954 | # application/vnd.verimatrix.vcas
955 | # application/vnd.vidsoft.vidconference
956 | application/vnd.visio vsd vst vss vsw
957 | application/vnd.visionary vis
958 | # application/vnd.vividence.scriptfile
959 | application/vnd.vsf vsf
960 | # application/vnd.wap.sic
961 | # application/vnd.wap.slc
962 | application/vnd.wap.wbxml wbxml
963 | application/vnd.wap.wmlc wmlc
964 | application/vnd.wap.wmlscriptc wmlsc
965 | application/vnd.webturbo wtb
966 | # application/vnd.wfa.wsc
967 | # application/vnd.wmc
968 | # application/vnd.wmf.bootstrap
969 | # application/vnd.wolfram.mathematica
970 | # application/vnd.wolfram.mathematica.package
971 | application/vnd.wolfram.player nbp
972 | application/vnd.wordperfect wpd
973 | application/vnd.wqd wqd
974 | # application/vnd.wrq-hp3000-labelled
975 | application/vnd.wt.stf stf
976 | # application/vnd.wv.csp+wbxml
977 | # application/vnd.wv.csp+xml
978 | # application/vnd.wv.ssp+xml
979 | application/vnd.xara xar
980 | application/vnd.xfdl xfdl
981 | # application/vnd.xfdl.webform
982 | # application/vnd.xmi+xml
983 | # application/vnd.xmpie.cpkg
984 | # application/vnd.xmpie.dpkg
985 | # application/vnd.xmpie.plan
986 | # application/vnd.xmpie.ppkg
987 | # application/vnd.xmpie.xlim
988 | application/vnd.yamaha.hv-dic hvd
989 | application/vnd.yamaha.hv-script hvs
990 | application/vnd.yamaha.hv-voice hvp
991 | application/vnd.yamaha.openscoreformat osf
992 | application/vnd.yamaha.openscoreformat.osfpvg+xml osfpvg
993 | # application/vnd.yamaha.remote-setup
994 | application/vnd.yamaha.smaf-audio saf
995 | application/vnd.yamaha.smaf-phrase spf
996 | # application/vnd.yamaha.through-ngn
997 | # application/vnd.yamaha.tunnel-udpencap
998 | application/vnd.yellowriver-custom-menu cmp
999 | application/vnd.zul zir zirz
1000 | application/vnd.zzazz.deck+xml zaz
1001 | application/voicexml+xml vxml
1002 | # application/vq-rtcpxr
1003 | # application/watcherinfo+xml
1004 | # application/whoispp-query
1005 | # application/whoispp-response
1006 | application/widget wgt
1007 | application/winhlp hlp
1008 | # application/wita
1009 | # application/wordperfect5.1
1010 | application/wsdl+xml wsdl
1011 | application/wspolicy+xml wspolicy
1012 | application/x-7z-compressed 7z
1013 | application/x-abiword abw
1014 | application/x-ace-compressed ace
1015 | # application/x-amf
1016 | application/x-apple-diskimage dmg
1017 | application/x-authorware-bin aab x32 u32 vox
1018 | application/x-authorware-map aam
1019 | application/x-authorware-seg aas
1020 | application/x-bcpio bcpio
1021 | application/x-bittorrent torrent
1022 | application/x-blorb blb blorb
1023 | application/x-bzip bz
1024 | application/x-bzip2 bz2 boz
1025 | application/x-cbr cbr cba cbt cbz cb7
1026 | application/x-cdlink vcd
1027 | application/x-cfs-compressed cfs
1028 | application/x-chat chat
1029 | application/x-chess-pgn pgn
1030 | application/x-conference nsc
1031 | # application/x-compress
1032 | application/x-cpio cpio
1033 | application/x-csh csh
1034 | application/x-debian-package deb udeb
1035 | application/x-dgc-compressed dgc
1036 | application/x-director dir dcr dxr cst cct cxt w3d fgd swa
1037 | application/x-doom wad
1038 | application/x-dtbncx+xml ncx
1039 | application/x-dtbook+xml dtb
1040 | application/x-dtbresource+xml res
1041 | application/x-dvi dvi
1042 | application/x-envoy evy
1043 | application/x-eva eva
1044 | application/x-font-bdf bdf
1045 | # application/x-font-dos
1046 | # application/x-font-framemaker
1047 | application/x-font-ghostscript gsf
1048 | # application/x-font-libgrx
1049 | application/x-font-linux-psf psf
1050 | application/x-font-otf otf
1051 | application/x-font-pcf pcf
1052 | application/x-font-snf snf
1053 | # application/x-font-speedo
1054 | # application/x-font-sunos-news
1055 | application/x-font-ttf ttf ttc
1056 | application/x-font-type1 pfa pfb pfm afm
1057 | application/x-font-woff woff
1058 | # application/x-font-vfont
1059 | application/x-freearc arc
1060 | application/x-futuresplash spl
1061 | application/x-gca-compressed gca
1062 | application/x-glulx ulx
1063 | application/x-gnumeric gnumeric
1064 | application/x-gramps-xml gramps
1065 | application/x-gtar gtar
1066 | # application/x-gzip
1067 | application/x-hdf hdf
1068 | application/x-install-instructions install
1069 | application/x-iso9660-image iso
1070 | application/x-java-jnlp-file jnlp
1071 | application/x-latex latex
1072 | application/x-lzh-compressed lzh lha
1073 | application/x-mie mie
1074 | application/x-mobipocket-ebook prc mobi
1075 | application/x-ms-application application
1076 | application/x-ms-shortcut lnk
1077 | application/x-ms-wmd wmd
1078 | application/x-ms-wmz wmz
1079 | application/x-ms-xbap xbap
1080 | application/x-msaccess mdb
1081 | application/x-msbinder obd
1082 | application/x-mscardfile crd
1083 | application/x-msclip clp
1084 | application/x-msdownload exe dll com bat msi
1085 | application/x-msmediaview mvb m13 m14
1086 | application/x-msmetafile wmf wmz emf emz
1087 | application/x-msmoney mny
1088 | application/x-mspublisher pub
1089 | application/x-msschedule scd
1090 | application/x-msterminal trm
1091 | application/x-mswrite wri
1092 | application/x-netcdf nc cdf
1093 | application/x-nzb nzb
1094 | application/x-pkcs12 p12 pfx
1095 | application/x-pkcs7-certificates p7b spc
1096 | application/x-pkcs7-certreqresp p7r
1097 | application/x-rar-compressed rar
1098 | application/x-research-info-systems ris
1099 | application/x-sh sh
1100 | application/x-shar shar
1101 | application/x-shockwave-flash swf
1102 | application/x-silverlight-app xap
1103 | application/x-sql sql
1104 | application/x-stuffit sit
1105 | application/x-stuffitx sitx
1106 | application/x-subrip srt
1107 | application/x-sv4cpio sv4cpio
1108 | application/x-sv4crc sv4crc
1109 | application/x-t3vm-image t3
1110 | application/x-tads gam
1111 | application/x-tar tar
1112 | application/x-tcl tcl
1113 | application/x-tex tex
1114 | application/x-tex-tfm tfm
1115 | application/x-texinfo texinfo texi
1116 | application/x-tgif obj
1117 | application/x-ustar ustar
1118 | application/x-wais-source src
1119 | application/x-x509-ca-cert der crt
1120 | application/x-xfig fig
1121 | application/x-xliff+xml xlf
1122 | application/x-xpinstall xpi
1123 | application/x-xz xz
1124 | application/x-zmachine z1 z2 z3 z4 z5 z6 z7 z8
1125 | # application/x400-bp
1126 | application/xaml+xml xaml
1127 | # application/xcap-att+xml
1128 | # application/xcap-caps+xml
1129 | application/xcap-diff+xml xdf
1130 | # application/xcap-el+xml
1131 | # application/xcap-error+xml
1132 | # application/xcap-ns+xml
1133 | # application/xcon-conference-info-diff+xml
1134 | # application/xcon-conference-info+xml
1135 | application/xenc+xml xenc
1136 | application/xhtml+xml xhtml xht
1137 | # application/xhtml-voice+xml
1138 | application/xml xml xsl
1139 | application/xml-dtd dtd
1140 | # application/xml-external-parsed-entity
1141 | # application/xmpp+xml
1142 | application/xop+xml xop
1143 | application/xproc+xml xpl
1144 | application/xslt+xml xslt
1145 | application/xspf+xml xspf
1146 | application/xv+xml mxml xhvml xvml xvm
1147 | application/yang yang
1148 | application/yin+xml yin
1149 | application/zip zip sketch
1150 | # audio/1d-interleaved-parityfec
1151 | # audio/32kadpcm
1152 | # audio/3gpp
1153 | # audio/3gpp2
1154 | # audio/ac3
1155 | audio/adpcm adp
1156 | # audio/amr
1157 | # audio/amr-wb
1158 | # audio/amr-wb+
1159 | # audio/asc
1160 | # audio/atrac-advanced-lossless
1161 | # audio/atrac-x
1162 | # audio/atrac3
1163 | audio/basic au snd
1164 | # audio/bv16
1165 | # audio/bv32
1166 | # audio/clearmode
1167 | # audio/cn
1168 | # audio/dat12
1169 | # audio/dls
1170 | # audio/dsr-es201108
1171 | # audio/dsr-es202050
1172 | # audio/dsr-es202211
1173 | # audio/dsr-es202212
1174 | # audio/dv
1175 | # audio/dvi4
1176 | # audio/eac3
1177 | # audio/evrc
1178 | # audio/evrc-qcp
1179 | # audio/evrc0
1180 | # audio/evrc1
1181 | # audio/evrcb
1182 | # audio/evrcb0
1183 | # audio/evrcb1
1184 | # audio/evrcwb
1185 | # audio/evrcwb0
1186 | # audio/evrcwb1
1187 | # audio/example
1188 | # audio/fwdred
1189 | # audio/g719
1190 | # audio/g722
1191 | # audio/g7221
1192 | # audio/g723
1193 | # audio/g726-16
1194 | # audio/g726-24
1195 | # audio/g726-32
1196 | # audio/g726-40
1197 | # audio/g728
1198 | # audio/g729
1199 | # audio/g7291
1200 | # audio/g729d
1201 | # audio/g729e
1202 | # audio/gsm
1203 | # audio/gsm-efr
1204 | # audio/gsm-hr-08
1205 | # audio/ilbc
1206 | # audio/ip-mr_v2.5
1207 | # audio/isac
1208 | # audio/l16
1209 | # audio/l20
1210 | # audio/l24
1211 | # audio/l8
1212 | # audio/lpc
1213 | audio/midi mid midi kar rmi
1214 | # audio/mobile-xmf
1215 | audio/mp4 mp4a
1216 | # audio/mp4a-latm
1217 | # audio/mpa
1218 | # audio/mpa-robust
1219 | audio/mpeg mpga mp2 mp2a mp3 m2a m3a
1220 | # audio/mpeg4-generic
1221 | # audio/musepack
1222 | audio/ogg oga ogg spx
1223 | # audio/opus
1224 | # audio/parityfec
1225 | # audio/pcma
1226 | # audio/pcma-wb
1227 | # audio/pcmu-wb
1228 | # audio/pcmu
1229 | # audio/prs.sid
1230 | # audio/qcelp
1231 | # audio/red
1232 | # audio/rtp-enc-aescm128
1233 | # audio/rtp-midi
1234 | # audio/rtx
1235 | audio/s3m s3m
1236 | audio/silk sil
1237 | # audio/smv
1238 | # audio/smv0
1239 | # audio/smv-qcp
1240 | # audio/sp-midi
1241 | # audio/speex
1242 | # audio/t140c
1243 | # audio/t38
1244 | # audio/telephone-event
1245 | # audio/tone
1246 | # audio/uemclip
1247 | # audio/ulpfec
1248 | # audio/vdvi
1249 | # audio/vmr-wb
1250 | # audio/vnd.3gpp.iufp
1251 | # audio/vnd.4sb
1252 | # audio/vnd.audiokoz
1253 | # audio/vnd.celp
1254 | # audio/vnd.cisco.nse
1255 | # audio/vnd.cmles.radio-events
1256 | # audio/vnd.cns.anp1
1257 | # audio/vnd.cns.inf1
1258 | audio/vnd.dece.audio uva uvva
1259 | audio/vnd.digital-winds eol
1260 | # audio/vnd.dlna.adts
1261 | # audio/vnd.dolby.heaac.1
1262 | # audio/vnd.dolby.heaac.2
1263 | # audio/vnd.dolby.mlp
1264 | # audio/vnd.dolby.mps
1265 | # audio/vnd.dolby.pl2
1266 | # audio/vnd.dolby.pl2x
1267 | # audio/vnd.dolby.pl2z
1268 | # audio/vnd.dolby.pulse.1
1269 | audio/vnd.dra dra
1270 | audio/vnd.dts dts
1271 | audio/vnd.dts.hd dtshd
1272 | # audio/vnd.dvb.file
1273 | # audio/vnd.everad.plj
1274 | # audio/vnd.hns.audio
1275 | audio/vnd.lucent.voice lvp
1276 | audio/vnd.ms-playready.media.pya pya
1277 | # audio/vnd.nokia.mobile-xmf
1278 | # audio/vnd.nortel.vbk
1279 | audio/vnd.nuera.ecelp4800 ecelp4800
1280 | audio/vnd.nuera.ecelp7470 ecelp7470
1281 | audio/vnd.nuera.ecelp9600 ecelp9600
1282 | # audio/vnd.octel.sbc
1283 | # audio/vnd.qcelp
1284 | # audio/vnd.rhetorex.32kadpcm
1285 | audio/vnd.rip rip
1286 | # audio/vnd.sealedmedia.softseal.mpeg
1287 | # audio/vnd.vmx.cvsd
1288 | # audio/vorbis
1289 | # audio/vorbis-config
1290 | audio/webm weba
1291 | audio/x-aac aac
1292 | audio/x-aiff aif aiff aifc
1293 | audio/x-caf caf
1294 | audio/x-flac flac
1295 | audio/x-matroska mka
1296 | audio/x-mpegurl m3u
1297 | audio/x-ms-wax wax
1298 | audio/x-ms-wma wma
1299 | audio/x-pn-realaudio ram ra
1300 | audio/x-pn-realaudio-plugin rmp
1301 | # audio/x-tta
1302 | audio/x-wav wav
1303 | audio/xm xm
1304 | chemical/x-cdx cdx
1305 | chemical/x-cif cif
1306 | chemical/x-cmdf cmdf
1307 | chemical/x-cml cml
1308 | chemical/x-csml csml
1309 | # chemical/x-pdb
1310 | chemical/x-xyz xyz
1311 | image/bmp bmp
1312 | image/cgm cgm
1313 | # image/example
1314 | # image/fits
1315 | image/g3fax g3
1316 | image/gif gif
1317 | image/heic heic
1318 | image/ief ief
1319 | # image/jp2
1320 | image/jpeg jpeg jpg jpe
1321 | # image/jpm
1322 | # image/jpx
1323 | image/ktx ktx
1324 | # image/naplps
1325 | image/png png
1326 | image/prs.btif btif
1327 | # image/prs.pti
1328 | image/sgi sgi
1329 | image/svg+xml svg svgz
1330 | # image/t38
1331 | image/tiff tiff tif
1332 | # image/tiff-fx
1333 | image/vnd.adobe.photoshop psd
1334 | # image/vnd.cns.inf2
1335 | image/vnd.dece.graphic uvi uvvi uvg uvvg
1336 | image/vnd.dvb.subtitle sub
1337 | image/vnd.djvu djvu djv
1338 | image/vnd.dwg dwg
1339 | image/vnd.dxf dxf
1340 | image/vnd.fastbidsheet fbs
1341 | image/vnd.fpx fpx
1342 | image/vnd.fst fst
1343 | image/vnd.fujixerox.edmics-mmr mmr
1344 | image/vnd.fujixerox.edmics-rlc rlc
1345 | # image/vnd.globalgraphics.pgb
1346 | # image/vnd.microsoft.icon
1347 | # image/vnd.mix
1348 | image/vnd.ms-modi mdi
1349 | image/vnd.ms-photo wdp
1350 | image/vnd.net-fpx npx
1351 | # image/vnd.radiance
1352 | # image/vnd.sealed.png
1353 | # image/vnd.sealedmedia.softseal.gif
1354 | # image/vnd.sealedmedia.softseal.jpg
1355 | # image/vnd.svf
1356 | image/vnd.wap.wbmp wbmp
1357 | image/vnd.xiff xif
1358 | image/webp webp
1359 | image/x-3ds 3ds
1360 | image/x-adobe-dng dng
1361 | image/x-adobe-dng dng
1362 | image/x-canon-cr2 cr2
1363 | image/x-canon-crw crw
1364 |
1365 | image/x-cmu-raster ras
1366 | image/x-cmx cmx
1367 | image/x-epson-erf erf
1368 | image/x-freehand fh fhc fh4 fh5 fh7
1369 | image/x-fuji-raf raf
1370 | image/x-icon ico
1371 | image/x-kodak-dcr dcr
1372 | image/x-kodak-k25 k25
1373 | image/x-kodak-kdc kdc
1374 | image/x-minolta-mrw mrw
1375 | image/x-mrsid-image sid
1376 | image/x-nikon-nef nef
1377 | image/x-olympus-orf orf
1378 | image/x-panasonic-raw raw
1379 | image/x-pcx pcx
1380 | image/x-pentax-pef pef
1381 | image/x-pict pic pct
1382 | image/x-portable-anymap pnm
1383 | image/x-portable-bitmap pbm
1384 | image/x-portable-graymap pgm
1385 | image/x-portable-pixmap ppm
1386 | image/x-rgb rgb
1387 | image/x-sigma-x3f x3f
1388 | image/x-sony-arw arw
1389 | image/x-sony-sr2 sr2
1390 | image/x-sony-srf srf
1391 | image/x-tga tga
1392 | image/x-xbitmap xbm
1393 | image/x-xpixmap xpm
1394 | image/x-xwindowdump xwd
1395 | # message/cpim
1396 | # message/delivery-status
1397 | # message/disposition-notification
1398 | # message/example
1399 | # message/external-body
1400 | # message/feedback-report
1401 | # message/global
1402 | # message/global-delivery-status
1403 | # message/global-disposition-notification
1404 | # message/global-headers
1405 | # message/http
1406 | # message/imdn+xml
1407 | # message/news
1408 | # message/partial
1409 | message/rfc822 eml mime
1410 | # message/s-http
1411 | # message/sip
1412 | # message/sipfrag
1413 | # message/tracking-status
1414 | # message/vnd.si.simp
1415 | # model/example
1416 | model/iges igs iges
1417 | model/mesh msh mesh silo
1418 | model/vnd.collada+xml dae
1419 | model/vnd.dwf dwf
1420 | # model/vnd.flatland.3dml
1421 | model/vnd.gdl gdl
1422 | # model/vnd.gs-gdl
1423 | # model/vnd.gs.gdl
1424 | model/vnd.gtw gtw
1425 | # model/vnd.moml+xml
1426 | model/vnd.mts mts
1427 | # model/vnd.parasolid.transmit.binary
1428 | # model/vnd.parasolid.transmit.text
1429 | model/vnd.vtu vtu
1430 | model/vrml wrl vrml
1431 | model/x3d+binary x3db x3dbz
1432 | model/x3d+vrml x3dv x3dvz
1433 | model/x3d+xml x3d x3dz
1434 | # multipart/alternative
1435 | # multipart/appledouble
1436 | # multipart/byteranges
1437 | # multipart/digest
1438 | # multipart/encrypted
1439 | # multipart/example
1440 | # multipart/form-data
1441 | # multipart/header-set
1442 | # multipart/mixed
1443 | # multipart/parallel
1444 | # multipart/related
1445 | # multipart/report
1446 | # multipart/signed
1447 | # multipart/voice-message
1448 | # text/1d-interleaved-parityfec
1449 | text/cache-manifest appcache
1450 | text/calendar ics ifb
1451 | text/css css
1452 | text/csv csv
1453 | # text/directory
1454 | # text/dns
1455 | # text/ecmascript
1456 | # text/enriched
1457 | # text/example
1458 | # text/fwdred
1459 | text/html html htm
1460 | # text/javascript
1461 | text/n3 n3
1462 | # text/parityfec
1463 | text/plain txt text conf def list log in
1464 | # text/prs.fallenstein.rst
1465 | text/prs.lines.tag dsc
1466 | # text/vnd.radisys.msml-basic-layout
1467 | # text/red
1468 | # text/rfc822-headers
1469 | text/richtext rtx
1470 | # text/rtf
1471 | # text/rtp-enc-aescm128
1472 | # text/rtx
1473 | text/sgml sgml sgm
1474 | # text/t140
1475 | text/tab-separated-values tsv
1476 | text/troff t tr roff man me ms
1477 | text/turtle ttl
1478 | # text/ulpfec
1479 | text/uri-list uri uris urls
1480 | text/vcard vcard
1481 | # text/vnd.abc
1482 | text/vnd.curl curl
1483 | text/vnd.curl.dcurl dcurl
1484 | text/vnd.curl.scurl scurl
1485 | text/vnd.curl.mcurl mcurl
1486 | # text/vnd.dmclientscript
1487 | text/vnd.dvb.subtitle sub
1488 | # text/vnd.esmertec.theme-descriptor
1489 | text/vnd.fly fly
1490 | text/vnd.fmi.flexstor flx
1491 | text/vnd.graphviz gv
1492 | text/vnd.in3d.3dml 3dml
1493 | text/vnd.in3d.spot spot
1494 | # text/vnd.iptc.newsml
1495 | # text/vnd.iptc.nitf
1496 | # text/vnd.latex-z
1497 | # text/vnd.motorola.reflex
1498 | # text/vnd.ms-mediapackage
1499 | # text/vnd.net2phone.commcenter.command
1500 | # text/vnd.si.uricatalogue
1501 | text/vnd.sun.j2me.app-descriptor jad
1502 | # text/vnd.trolltech.linguist
1503 | # text/vnd.wap.si
1504 | # text/vnd.wap.sl
1505 | text/vnd.wap.wml wml
1506 | text/vnd.wap.wmlscript wmls
1507 | text/x-asm s asm
1508 | text/x-c c cc cxx cpp h hh dic
1509 | text/x-fortran f for f77 f90
1510 | text/x-java-source java
1511 | text/x-opml opml
1512 | text/x-pascal p pas
1513 | text/x-php php phtml php3 php4 php5 php7 phps
1514 | text/x-nfo nfo
1515 | text/x-setext etx
1516 | text/x-sfv sfv
1517 | text/x-uuencode uu
1518 | text/x-vcalendar vcs
1519 | text/x-vcard vcf
1520 | # text/xml
1521 | # text/xml-external-parsed-entity
1522 | # video/1d-interleaved-parityfec
1523 | video/3gpp 3gp
1524 | # video/3gpp-tt
1525 | video/3gpp2 3g2
1526 | # video/bmpeg
1527 | # video/bt656
1528 | # video/celb
1529 | # video/dv
1530 | # video/example
1531 | video/h261 h261
1532 | video/h263 h263
1533 | # video/h263-1998
1534 | # video/h263-2000
1535 | video/h264 h264
1536 | # video/h264-rcdo
1537 | # video/h264-svc
1538 | video/jpeg jpgv
1539 | # video/jpeg2000
1540 | video/jpm jpm jpgm
1541 | video/mj2 mj2 mjp2
1542 | # video/mp1s
1543 | # video/mp2p
1544 | # video/mp2t
1545 | video/mp4 mp4 mp4v mpg4
1546 | # video/mp4v-es
1547 | video/mpeg mpeg mpg mpe m1v m2v
1548 | # video/mpeg4-generic
1549 | # video/mpv
1550 | # video/nv
1551 | video/ogg ogv
1552 | # video/parityfec
1553 | # video/pointer
1554 | video/quicktime qt mov
1555 | # video/raw
1556 | # video/rtp-enc-aescm128
1557 | # video/rtx
1558 | # video/smpte292m
1559 | # video/ulpfec
1560 | # video/vc1
1561 | # video/vnd.cctv
1562 | video/vnd.dece.hd uvh uvvh
1563 | video/vnd.dece.mobile uvm uvvm
1564 | # video/vnd.dece.mp4
1565 | video/vnd.dece.pd uvp uvvp
1566 | video/vnd.dece.sd uvs uvvs
1567 | video/vnd.dece.video uvv uvvv
1568 | # video/vnd.directv.mpeg
1569 | # video/vnd.directv.mpeg-tts
1570 | # video/vnd.dlna.mpeg-tts
1571 | video/vnd.dvb.file dvb
1572 | video/vnd.fvt fvt
1573 | # video/vnd.hns.video
1574 | # video/vnd.iptvforum.1dparityfec-1010
1575 | # video/vnd.iptvforum.1dparityfec-2005
1576 | # video/vnd.iptvforum.2dparityfec-1010
1577 | # video/vnd.iptvforum.2dparityfec-2005
1578 | # video/vnd.iptvforum.ttsavc
1579 | # video/vnd.iptvforum.ttsmpeg2
1580 | # video/vnd.motorola.video
1581 | # video/vnd.motorola.videop
1582 | video/vnd.mpegurl mxu m4u
1583 | video/vnd.ms-playready.media.pyv pyv
1584 | # video/vnd.nokia.interleaved-multimedia
1585 | # video/vnd.nokia.videovoip
1586 | # video/vnd.objectvideo
1587 | # video/vnd.sealed.mpeg1
1588 | # video/vnd.sealed.mpeg4
1589 | # video/vnd.sealed.swf
1590 | # video/vnd.sealedmedia.softseal.mov
1591 | video/vnd.uvvu.mp4 uvu uvvu
1592 | video/vnd.vivo viv
1593 | video/webm webm
1594 | video/x-f4v f4v
1595 | video/x-fli fli
1596 | video/x-flv flv
1597 | video/x-m4v m4v
1598 | video/x-matroska mkv mk3d mks
1599 | video/x-mng mng
1600 | video/x-ms-asf asf asx
1601 | video/x-ms-vob vob
1602 | video/x-ms-wm wm
1603 | video/x-ms-wmv wmv
1604 | video/x-ms-wmx wmx
1605 | video/x-ms-wvx wvx
1606 | video/x-msvideo avi
1607 | video/x-sgi-movie movie
1608 | video/x-smv smv
1609 | x-conference/x-cooltalk ice
1610 |
--------------------------------------------------------------------------------
/src/Dflydev/ApacheMimeTypes/PhpRepository.php:
--------------------------------------------------------------------------------
1 |
18 | */
19 | class PhpRepository implements RepositoryInterface
20 | {
21 | protected $extensionToType = array(
22 | 'ez' => 'application/andrew-inset',
23 | 'aw' => 'application/applixware',
24 | 'atom' => 'application/atom+xml',
25 | 'atomcat' => 'application/atomcat+xml',
26 | 'atomsvc' => 'application/atomsvc+xml',
27 | 'ccxml' => 'application/ccxml+xml',
28 | 'cdmia' => 'application/cdmi-capability',
29 | 'cdmic' => 'application/cdmi-container',
30 | 'cdmid' => 'application/cdmi-domain',
31 | 'cdmio' => 'application/cdmi-object',
32 | 'cdmiq' => 'application/cdmi-queue',
33 | 'cu' => 'application/cu-seeme',
34 | 'davmount' => 'application/davmount+xml',
35 | 'dbk' => 'application/docbook+xml',
36 | 'dssc' => 'application/dssc+der',
37 | 'xdssc' => 'application/dssc+xml',
38 | 'ecma' => 'application/ecmascript',
39 | 'emma' => 'application/emma+xml',
40 | 'epub' => 'application/epub+zip',
41 | 'exi' => 'application/exi',
42 | 'pfr' => 'application/font-tdpfr',
43 | 'gml' => 'application/gml+xml',
44 | 'gpx' => 'application/gpx+xml',
45 | 'gxf' => 'application/gxf',
46 | 'stk' => 'application/hyperstudio',
47 | 'ink' => 'application/inkml+xml',
48 | 'inkml' => 'application/inkml+xml',
49 | 'ipfix' => 'application/ipfix',
50 | 'jar' => 'application/java-archive',
51 | 'ser' => 'application/java-serialized-object',
52 | 'class' => 'application/java-vm',
53 | 'js' => 'application/javascript',
54 | 'json' => 'application/json',
55 | 'jsonml' => 'application/jsonml+json',
56 | 'lostxml' => 'application/lost+xml',
57 | 'hqx' => 'application/mac-binhex40',
58 | 'cpt' => 'application/mac-compactpro',
59 | 'mads' => 'application/mads+xml',
60 | 'mrc' => 'application/marc',
61 | 'mrcx' => 'application/marcxml+xml',
62 | 'ma' => 'application/mathematica',
63 | 'nb' => 'application/mathematica',
64 | 'mb' => 'application/mathematica',
65 | 'mathml' => 'application/mathml+xml',
66 | 'mbox' => 'application/mbox',
67 | 'mscml' => 'application/mediaservercontrol+xml',
68 | 'metalink' => 'application/metalink+xml',
69 | 'meta4' => 'application/metalink4+xml',
70 | 'mets' => 'application/mets+xml',
71 | 'mods' => 'application/mods+xml',
72 | 'm21' => 'application/mp21',
73 | 'mp21' => 'application/mp21',
74 | 'mp4s' => 'application/mp4',
75 | 'doc' => 'application/msword',
76 | 'dot' => 'application/msword',
77 | 'mxf' => 'application/mxf',
78 | 'bin' => 'application/octet-stream',
79 | 'dms' => 'application/octet-stream',
80 | 'lrf' => 'application/octet-stream',
81 | 'mar' => 'application/octet-stream',
82 | 'so' => 'application/octet-stream',
83 | 'dist' => 'application/octet-stream',
84 | 'distz' => 'application/octet-stream',
85 | 'pkg' => 'application/octet-stream',
86 | 'bpk' => 'application/octet-stream',
87 | 'dump' => 'application/octet-stream',
88 | 'elc' => 'application/octet-stream',
89 | 'deploy' => 'application/octet-stream',
90 | 'oda' => 'application/oda',
91 | 'opf' => 'application/oebps-package+xml',
92 | 'ogx' => 'application/ogg',
93 | 'omdoc' => 'application/omdoc+xml',
94 | 'onetoc' => 'application/onenote',
95 | 'onetoc2' => 'application/onenote',
96 | 'onetmp' => 'application/onenote',
97 | 'onepkg' => 'application/onenote',
98 | 'oxps' => 'application/oxps',
99 | 'xer' => 'application/patch-ops-error+xml',
100 | 'pdf' => 'application/pdf',
101 | 'pgp' => 'application/pgp-encrypted',
102 | 'asc' => 'application/pgp-signature',
103 | 'sig' => 'application/pgp-signature',
104 | 'prf' => 'application/pics-rules',
105 | 'p10' => 'application/pkcs10',
106 | 'p7m' => 'application/pkcs7-mime',
107 | 'p7c' => 'application/pkcs7-mime',
108 | 'p7s' => 'application/pkcs7-signature',
109 | 'p8' => 'application/pkcs8',
110 | 'ac' => 'application/pkix-attr-cert',
111 | 'cer' => 'application/pkix-cert',
112 | 'crl' => 'application/pkix-crl',
113 | 'pkipath' => 'application/pkix-pkipath',
114 | 'pki' => 'application/pkixcmp',
115 | 'pls' => 'application/pls+xml',
116 | 'ai' => 'application/postscript',
117 | 'eps' => 'application/postscript',
118 | 'ps' => 'application/postscript',
119 | 'cww' => 'application/prs.cww',
120 | 'pskcxml' => 'application/pskc+xml',
121 | 'rdf' => 'application/rdf+xml',
122 | 'rif' => 'application/reginfo+xml',
123 | 'rnc' => 'application/relax-ng-compact-syntax',
124 | 'rl' => 'application/resource-lists+xml',
125 | 'rld' => 'application/resource-lists-diff+xml',
126 | 'rs' => 'application/rls-services+xml',
127 | 'gbr' => 'application/rpki-ghostbusters',
128 | 'mft' => 'application/rpki-manifest',
129 | 'roa' => 'application/rpki-roa',
130 | 'rsd' => 'application/rsd+xml',
131 | 'rss' => 'application/rss+xml',
132 | 'rtf' => 'application/rtf',
133 | 'sbml' => 'application/sbml+xml',
134 | 'scq' => 'application/scvp-cv-request',
135 | 'scs' => 'application/scvp-cv-response',
136 | 'spq' => 'application/scvp-vp-request',
137 | 'spp' => 'application/scvp-vp-response',
138 | 'sdp' => 'application/sdp',
139 | 'setpay' => 'application/set-payment-initiation',
140 | 'setreg' => 'application/set-registration-initiation',
141 | 'shf' => 'application/shf+xml',
142 | 'smi' => 'application/smil+xml',
143 | 'smil' => 'application/smil+xml',
144 | 'rq' => 'application/sparql-query',
145 | 'srx' => 'application/sparql-results+xml',
146 | 'gram' => 'application/srgs',
147 | 'grxml' => 'application/srgs+xml',
148 | 'sru' => 'application/sru+xml',
149 | 'ssdl' => 'application/ssdl+xml',
150 | 'ssml' => 'application/ssml+xml',
151 | 'tei' => 'application/tei+xml',
152 | 'teicorpus' => 'application/tei+xml',
153 | 'tfi' => 'application/thraud+xml',
154 | 'tsd' => 'application/timestamped-data',
155 | 'plb' => 'application/vnd.3gpp.pic-bw-large',
156 | 'psb' => 'application/vnd.3gpp.pic-bw-small',
157 | 'pvb' => 'application/vnd.3gpp.pic-bw-var',
158 | 'tcap' => 'application/vnd.3gpp2.tcap',
159 | 'pwn' => 'application/vnd.3m.post-it-notes',
160 | 'aso' => 'application/vnd.accpac.simply.aso',
161 | 'imp' => 'application/vnd.accpac.simply.imp',
162 | 'acu' => 'application/vnd.acucobol',
163 | 'atc' => 'application/vnd.acucorp',
164 | 'acutc' => 'application/vnd.acucorp',
165 | 'air' => 'application/vnd.adobe.air-application-installer-package+zip',
166 | 'fcdt' => 'application/vnd.adobe.formscentral.fcdt',
167 | 'fxp' => 'application/vnd.adobe.fxp',
168 | 'fxpl' => 'application/vnd.adobe.fxp',
169 | 'xdp' => 'application/vnd.adobe.xdp+xml',
170 | 'xfdf' => 'application/vnd.adobe.xfdf',
171 | 'ahead' => 'application/vnd.ahead.space',
172 | 'azf' => 'application/vnd.airzip.filesecure.azf',
173 | 'azs' => 'application/vnd.airzip.filesecure.azs',
174 | 'azw' => 'application/vnd.amazon.ebook',
175 | 'acc' => 'application/vnd.americandynamics.acc',
176 | 'ami' => 'application/vnd.amiga.ami',
177 | 'apk' => 'application/vnd.android.package-archive',
178 | 'cii' => 'application/vnd.anser-web-certificate-issue-initiation',
179 | 'fti' => 'application/vnd.anser-web-funds-transfer-initiation',
180 | 'atx' => 'application/vnd.antix.game-component',
181 | 'mpkg' => 'application/vnd.apple.installer+xml',
182 | 'm3u8' => 'application/vnd.apple.mpegurl',
183 | 'swi' => 'application/vnd.aristanetworks.swi',
184 | 'iota' => 'application/vnd.astraea-software.iota',
185 | 'aep' => 'application/vnd.audiograph',
186 | 'mpm' => 'application/vnd.blueice.multipass',
187 | 'bmi' => 'application/vnd.bmi',
188 | 'rep' => 'application/vnd.businessobjects',
189 | 'cdxml' => 'application/vnd.chemdraw+xml',
190 | 'mmd' => 'application/vnd.chipnuts.karaoke-mmd',
191 | 'cdy' => 'application/vnd.cinderella',
192 | 'cla' => 'application/vnd.claymore',
193 | 'rp9' => 'application/vnd.cloanto.rp9',
194 | 'c4g' => 'application/vnd.clonk.c4group',
195 | 'c4d' => 'application/vnd.clonk.c4group',
196 | 'c4f' => 'application/vnd.clonk.c4group',
197 | 'c4p' => 'application/vnd.clonk.c4group',
198 | 'c4u' => 'application/vnd.clonk.c4group',
199 | 'c11amc' => 'application/vnd.cluetrust.cartomobile-config',
200 | 'c11amz' => 'application/vnd.cluetrust.cartomobile-config-pkg',
201 | 'csp' => 'application/vnd.commonspace',
202 | 'cdbcmsg' => 'application/vnd.contact.cmsg',
203 | 'cmc' => 'application/vnd.cosmocaller',
204 | 'clkx' => 'application/vnd.crick.clicker',
205 | 'clkk' => 'application/vnd.crick.clicker.keyboard',
206 | 'clkp' => 'application/vnd.crick.clicker.palette',
207 | 'clkt' => 'application/vnd.crick.clicker.template',
208 | 'clkw' => 'application/vnd.crick.clicker.wordbank',
209 | 'wbs' => 'application/vnd.criticaltools.wbs+xml',
210 | 'pml' => 'application/vnd.ctc-posml',
211 | 'ppd' => 'application/vnd.cups-ppd',
212 | 'car' => 'application/vnd.curl.car',
213 | 'pcurl' => 'application/vnd.curl.pcurl',
214 | 'dart' => 'application/vnd.dart',
215 | 'rdz' => 'application/vnd.data-vision.rdz',
216 | 'uvf' => 'application/vnd.dece.data',
217 | 'uvvf' => 'application/vnd.dece.data',
218 | 'uvd' => 'application/vnd.dece.data',
219 | 'uvvd' => 'application/vnd.dece.data',
220 | 'uvt' => 'application/vnd.dece.ttml+xml',
221 | 'uvvt' => 'application/vnd.dece.ttml+xml',
222 | 'uvx' => 'application/vnd.dece.unspecified',
223 | 'uvvx' => 'application/vnd.dece.unspecified',
224 | 'uvz' => 'application/vnd.dece.zip',
225 | 'uvvz' => 'application/vnd.dece.zip',
226 | 'fe_launch' => 'application/vnd.denovo.fcselayout-link',
227 | 'dna' => 'application/vnd.dna',
228 | 'mlp' => 'application/vnd.dolby.mlp',
229 | 'dpg' => 'application/vnd.dpgraph',
230 | 'dfac' => 'application/vnd.dreamfactory',
231 | 'kpxx' => 'application/vnd.ds-keypoint',
232 | 'ait' => 'application/vnd.dvb.ait',
233 | 'svc' => 'application/vnd.dvb.service',
234 | 'geo' => 'application/vnd.dynageo',
235 | 'mag' => 'application/vnd.ecowin.chart',
236 | 'nml' => 'application/vnd.enliven',
237 | 'esf' => 'application/vnd.epson.esf',
238 | 'msf' => 'application/vnd.epson.msf',
239 | 'qam' => 'application/vnd.epson.quickanime',
240 | 'slt' => 'application/vnd.epson.salt',
241 | 'ssf' => 'application/vnd.epson.ssf',
242 | 'es3' => 'application/vnd.eszigno3+xml',
243 | 'et3' => 'application/vnd.eszigno3+xml',
244 | 'ez2' => 'application/vnd.ezpix-album',
245 | 'ez3' => 'application/vnd.ezpix-package',
246 | 'fdf' => 'application/vnd.fdf',
247 | 'mseed' => 'application/vnd.fdsn.mseed',
248 | 'seed' => 'application/vnd.fdsn.seed',
249 | 'dataless' => 'application/vnd.fdsn.seed',
250 | 'gph' => 'application/vnd.flographit',
251 | 'ftc' => 'application/vnd.fluxtime.clip',
252 | 'fm' => 'application/vnd.framemaker',
253 | 'frame' => 'application/vnd.framemaker',
254 | 'maker' => 'application/vnd.framemaker',
255 | 'book' => 'application/vnd.framemaker',
256 | 'fnc' => 'application/vnd.frogans.fnc',
257 | 'ltf' => 'application/vnd.frogans.ltf',
258 | 'fsc' => 'application/vnd.fsc.weblaunch',
259 | 'oas' => 'application/vnd.fujitsu.oasys',
260 | 'oa2' => 'application/vnd.fujitsu.oasys2',
261 | 'oa3' => 'application/vnd.fujitsu.oasys3',
262 | 'fg5' => 'application/vnd.fujitsu.oasysgp',
263 | 'bh2' => 'application/vnd.fujitsu.oasysprs',
264 | 'ddd' => 'application/vnd.fujixerox.ddd',
265 | 'xdw' => 'application/vnd.fujixerox.docuworks',
266 | 'xbd' => 'application/vnd.fujixerox.docuworks.binder',
267 | 'fzs' => 'application/vnd.fuzzysheet',
268 | 'txd' => 'application/vnd.genomatix.tuxedo',
269 | 'ggb' => 'application/vnd.geogebra.file',
270 | 'ggt' => 'application/vnd.geogebra.tool',
271 | 'gex' => 'application/vnd.geometry-explorer',
272 | 'gre' => 'application/vnd.geometry-explorer',
273 | 'gxt' => 'application/vnd.geonext',
274 | 'g2w' => 'application/vnd.geoplan',
275 | 'g3w' => 'application/vnd.geospace',
276 | 'gmx' => 'application/vnd.gmx',
277 | 'kml' => 'application/vnd.google-earth.kml+xml',
278 | 'kmz' => 'application/vnd.google-earth.kmz',
279 | 'gqf' => 'application/vnd.grafeq',
280 | 'gqs' => 'application/vnd.grafeq',
281 | 'gac' => 'application/vnd.groove-account',
282 | 'ghf' => 'application/vnd.groove-help',
283 | 'gim' => 'application/vnd.groove-identity-message',
284 | 'grv' => 'application/vnd.groove-injector',
285 | 'gtm' => 'application/vnd.groove-tool-message',
286 | 'tpl' => 'application/vnd.groove-tool-template',
287 | 'vcg' => 'application/vnd.groove-vcard',
288 | 'hal' => 'application/vnd.hal+xml',
289 | 'zmm' => 'application/vnd.handheld-entertainment+xml',
290 | 'hbci' => 'application/vnd.hbci',
291 | 'les' => 'application/vnd.hhe.lesson-player',
292 | 'hpgl' => 'application/vnd.hp-hpgl',
293 | 'hpid' => 'application/vnd.hp-hpid',
294 | 'hps' => 'application/vnd.hp-hps',
295 | 'jlt' => 'application/vnd.hp-jlyt',
296 | 'pcl' => 'application/vnd.hp-pcl',
297 | 'pclxl' => 'application/vnd.hp-pclxl',
298 | 'sfd-hdstx' => 'application/vnd.hydrostatix.sof-data',
299 | 'mpy' => 'application/vnd.ibm.minipay',
300 | 'afp' => 'application/vnd.ibm.modcap',
301 | 'listafp' => 'application/vnd.ibm.modcap',
302 | 'list3820' => 'application/vnd.ibm.modcap',
303 | 'irm' => 'application/vnd.ibm.rights-management',
304 | 'sc' => 'application/vnd.ibm.secure-container',
305 | 'icc' => 'application/vnd.iccprofile',
306 | 'icm' => 'application/vnd.iccprofile',
307 | 'igl' => 'application/vnd.igloader',
308 | 'ivp' => 'application/vnd.immervision-ivp',
309 | 'ivu' => 'application/vnd.immervision-ivu',
310 | 'igm' => 'application/vnd.insors.igm',
311 | 'xpw' => 'application/vnd.intercon.formnet',
312 | 'xpx' => 'application/vnd.intercon.formnet',
313 | 'i2g' => 'application/vnd.intergeo',
314 | 'qbo' => 'application/vnd.intu.qbo',
315 | 'qfx' => 'application/vnd.intu.qfx',
316 | 'rcprofile' => 'application/vnd.ipunplugged.rcprofile',
317 | 'irp' => 'application/vnd.irepository.package+xml',
318 | 'xpr' => 'application/vnd.is-xpr',
319 | 'fcs' => 'application/vnd.isac.fcs',
320 | 'jam' => 'application/vnd.jam',
321 | 'rms' => 'application/vnd.jcp.javame.midlet-rms',
322 | 'jisp' => 'application/vnd.jisp',
323 | 'joda' => 'application/vnd.joost.joda-archive',
324 | 'ktz' => 'application/vnd.kahootz',
325 | 'ktr' => 'application/vnd.kahootz',
326 | 'karbon' => 'application/vnd.kde.karbon',
327 | 'chrt' => 'application/vnd.kde.kchart',
328 | 'kfo' => 'application/vnd.kde.kformula',
329 | 'flw' => 'application/vnd.kde.kivio',
330 | 'kon' => 'application/vnd.kde.kontour',
331 | 'kpr' => 'application/vnd.kde.kpresenter',
332 | 'kpt' => 'application/vnd.kde.kpresenter',
333 | 'ksp' => 'application/vnd.kde.kspread',
334 | 'kwd' => 'application/vnd.kde.kword',
335 | 'kwt' => 'application/vnd.kde.kword',
336 | 'htke' => 'application/vnd.kenameaapp',
337 | 'kia' => 'application/vnd.kidspiration',
338 | 'kne' => 'application/vnd.kinar',
339 | 'knp' => 'application/vnd.kinar',
340 | 'skp' => 'application/vnd.koan',
341 | 'skd' => 'application/vnd.koan',
342 | 'skt' => 'application/vnd.koan',
343 | 'skm' => 'application/vnd.koan',
344 | 'sse' => 'application/vnd.kodak-descriptor',
345 | 'lasxml' => 'application/vnd.las.las+xml',
346 | 'lbd' => 'application/vnd.llamagraphics.life-balance.desktop',
347 | 'lbe' => 'application/vnd.llamagraphics.life-balance.exchange+xml',
348 | '123' => 'application/vnd.lotus-1-2-3',
349 | 'apr' => 'application/vnd.lotus-approach',
350 | 'pre' => 'application/vnd.lotus-freelance',
351 | 'nsf' => 'application/vnd.lotus-notes',
352 | 'org' => 'application/vnd.lotus-organizer',
353 | 'scm' => 'application/vnd.lotus-screencam',
354 | 'lwp' => 'application/vnd.lotus-wordpro',
355 | 'portpkg' => 'application/vnd.macports.portpkg',
356 | 'mcd' => 'application/vnd.mcd',
357 | 'mc1' => 'application/vnd.medcalcdata',
358 | 'cdkey' => 'application/vnd.mediastation.cdkey',
359 | 'mwf' => 'application/vnd.mfer',
360 | 'mfm' => 'application/vnd.mfmp',
361 | 'flo' => 'application/vnd.micrografx.flo',
362 | 'igx' => 'application/vnd.micrografx.igx',
363 | 'mif' => 'application/vnd.mif',
364 | 'daf' => 'application/vnd.mobius.daf',
365 | 'dis' => 'application/vnd.mobius.dis',
366 | 'mbk' => 'application/vnd.mobius.mbk',
367 | 'mqy' => 'application/vnd.mobius.mqy',
368 | 'msl' => 'application/vnd.mobius.msl',
369 | 'plc' => 'application/vnd.mobius.plc',
370 | 'txf' => 'application/vnd.mobius.txf',
371 | 'mpn' => 'application/vnd.mophun.application',
372 | 'mpc' => 'application/vnd.mophun.certificate',
373 | 'xul' => 'application/vnd.mozilla.xul+xml',
374 | 'cil' => 'application/vnd.ms-artgalry',
375 | 'cab' => 'application/vnd.ms-cab-compressed',
376 | 'xls' => 'application/vnd.ms-excel',
377 | 'xlm' => 'application/vnd.ms-excel',
378 | 'xla' => 'application/vnd.ms-excel',
379 | 'xlc' => 'application/vnd.ms-excel',
380 | 'xlt' => 'application/vnd.ms-excel',
381 | 'xlw' => 'application/vnd.ms-excel',
382 | 'xlam' => 'application/vnd.ms-excel.addin.macroenabled.12',
383 | 'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroenabled.12',
384 | 'xlsm' => 'application/vnd.ms-excel.sheet.macroenabled.12',
385 | 'xltm' => 'application/vnd.ms-excel.template.macroenabled.12',
386 | 'eot' => 'application/vnd.ms-fontobject',
387 | 'chm' => 'application/vnd.ms-htmlhelp',
388 | 'ims' => 'application/vnd.ms-ims',
389 | 'lrm' => 'application/vnd.ms-lrm',
390 | 'thmx' => 'application/vnd.ms-officetheme',
391 | 'cat' => 'application/vnd.ms-pki.seccat',
392 | 'stl' => 'application/vnd.ms-pki.stl',
393 | 'ppt' => 'application/vnd.ms-powerpoint',
394 | 'pps' => 'application/vnd.ms-powerpoint',
395 | 'pot' => 'application/vnd.ms-powerpoint',
396 | 'ppam' => 'application/vnd.ms-powerpoint.addin.macroenabled.12',
397 | 'pptm' => 'application/vnd.ms-powerpoint.presentation.macroenabled.12',
398 | 'sldm' => 'application/vnd.ms-powerpoint.slide.macroenabled.12',
399 | 'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroenabled.12',
400 | 'potm' => 'application/vnd.ms-powerpoint.template.macroenabled.12',
401 | 'mpp' => 'application/vnd.ms-project',
402 | 'mpt' => 'application/vnd.ms-project',
403 | 'docm' => 'application/vnd.ms-word.document.macroenabled.12',
404 | 'dotm' => 'application/vnd.ms-word.template.macroenabled.12',
405 | 'wps' => 'application/vnd.ms-works',
406 | 'wks' => 'application/vnd.ms-works',
407 | 'wcm' => 'application/vnd.ms-works',
408 | 'wdb' => 'application/vnd.ms-works',
409 | 'wpl' => 'application/vnd.ms-wpl',
410 | 'xps' => 'application/vnd.ms-xpsdocument',
411 | 'mseq' => 'application/vnd.mseq',
412 | 'mus' => 'application/vnd.musician',
413 | 'msty' => 'application/vnd.muvee.style',
414 | 'taglet' => 'application/vnd.mynfc',
415 | 'nlu' => 'application/vnd.neurolanguage.nlu',
416 | 'ntf' => 'application/vnd.nitf',
417 | 'nitf' => 'application/vnd.nitf',
418 | 'nnd' => 'application/vnd.noblenet-directory',
419 | 'nns' => 'application/vnd.noblenet-sealer',
420 | 'nnw' => 'application/vnd.noblenet-web',
421 | 'ngdat' => 'application/vnd.nokia.n-gage.data',
422 | 'n-gage' => 'application/vnd.nokia.n-gage.symbian.install',
423 | 'rpst' => 'application/vnd.nokia.radio-preset',
424 | 'rpss' => 'application/vnd.nokia.radio-presets',
425 | 'edm' => 'application/vnd.novadigm.edm',
426 | 'edx' => 'application/vnd.novadigm.edx',
427 | 'ext' => 'application/vnd.novadigm.ext',
428 | 'odc' => 'application/vnd.oasis.opendocument.chart',
429 | 'otc' => 'application/vnd.oasis.opendocument.chart-template',
430 | 'odb' => 'application/vnd.oasis.opendocument.database',
431 | 'odf' => 'application/vnd.oasis.opendocument.formula',
432 | 'odft' => 'application/vnd.oasis.opendocument.formula-template',
433 | 'odg' => 'application/vnd.oasis.opendocument.graphics',
434 | 'otg' => 'application/vnd.oasis.opendocument.graphics-template',
435 | 'odi' => 'application/vnd.oasis.opendocument.image',
436 | 'oti' => 'application/vnd.oasis.opendocument.image-template',
437 | 'odp' => 'application/vnd.oasis.opendocument.presentation',
438 | 'otp' => 'application/vnd.oasis.opendocument.presentation-template',
439 | 'ods' => 'application/vnd.oasis.opendocument.spreadsheet',
440 | 'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template',
441 | 'odt' => 'application/vnd.oasis.opendocument.text',
442 | 'odm' => 'application/vnd.oasis.opendocument.text-master',
443 | 'ott' => 'application/vnd.oasis.opendocument.text-template',
444 | 'oth' => 'application/vnd.oasis.opendocument.text-web',
445 | 'xo' => 'application/vnd.olpc-sugar',
446 | 'dd2' => 'application/vnd.oma.dd2+xml',
447 | 'oxt' => 'application/vnd.openofficeorg.extension',
448 | 'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
449 | 'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide',
450 | 'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow',
451 | 'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template',
452 | 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
453 | 'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template',
454 | 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
455 | 'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template',
456 | 'mgp' => 'application/vnd.osgeo.mapguide.package',
457 | 'dp' => 'application/vnd.osgi.dp',
458 | 'esa' => 'application/vnd.osgi.subsystem',
459 | 'pdb' => 'application/vnd.palm',
460 | 'pqa' => 'application/vnd.palm',
461 | 'oprc' => 'application/vnd.palm',
462 | 'paw' => 'application/vnd.pawaafile',
463 | 'str' => 'application/vnd.pg.format',
464 | 'ei6' => 'application/vnd.pg.osasli',
465 | 'efif' => 'application/vnd.picsel',
466 | 'wg' => 'application/vnd.pmi.widget',
467 | 'plf' => 'application/vnd.pocketlearn',
468 | 'pbd' => 'application/vnd.powerbuilder6',
469 | 'box' => 'application/vnd.previewsystems.box',
470 | 'mgz' => 'application/vnd.proteus.magazine',
471 | 'qps' => 'application/vnd.publishare-delta-tree',
472 | 'ptid' => 'application/vnd.pvi.ptid1',
473 | 'qxd' => 'application/vnd.quark.quarkxpress',
474 | 'qxt' => 'application/vnd.quark.quarkxpress',
475 | 'qwd' => 'application/vnd.quark.quarkxpress',
476 | 'qwt' => 'application/vnd.quark.quarkxpress',
477 | 'qxl' => 'application/vnd.quark.quarkxpress',
478 | 'qxb' => 'application/vnd.quark.quarkxpress',
479 | 'bed' => 'application/vnd.realvnc.bed',
480 | 'mxl' => 'application/vnd.recordare.musicxml',
481 | 'musicxml' => 'application/vnd.recordare.musicxml+xml',
482 | 'cryptonote' => 'application/vnd.rig.cryptonote',
483 | 'cod' => 'application/vnd.rim.cod',
484 | 'rm' => 'application/vnd.rn-realmedia',
485 | 'rmvb' => 'application/vnd.rn-realmedia-vbr',
486 | 'link66' => 'application/vnd.route66.link66+xml',
487 | 'st' => 'application/vnd.sailingtracker.track',
488 | 'see' => 'application/vnd.seemail',
489 | 'sema' => 'application/vnd.sema',
490 | 'semd' => 'application/vnd.semd',
491 | 'semf' => 'application/vnd.semf',
492 | 'ifm' => 'application/vnd.shana.informed.formdata',
493 | 'itp' => 'application/vnd.shana.informed.formtemplate',
494 | 'iif' => 'application/vnd.shana.informed.interchange',
495 | 'ipk' => 'application/vnd.shana.informed.package',
496 | 'twd' => 'application/vnd.simtech-mindmapper',
497 | 'twds' => 'application/vnd.simtech-mindmapper',
498 | 'mmf' => 'application/vnd.smaf',
499 | 'teacher' => 'application/vnd.smart.teacher',
500 | 'sdkm' => 'application/vnd.solent.sdkm+xml',
501 | 'sdkd' => 'application/vnd.solent.sdkm+xml',
502 | 'dxp' => 'application/vnd.spotfire.dxp',
503 | 'sfs' => 'application/vnd.spotfire.sfs',
504 | 'sdc' => 'application/vnd.stardivision.calc',
505 | 'sda' => 'application/vnd.stardivision.draw',
506 | 'sdd' => 'application/vnd.stardivision.impress',
507 | 'smf' => 'application/vnd.stardivision.math',
508 | 'sdw' => 'application/vnd.stardivision.writer',
509 | 'vor' => 'application/vnd.stardivision.writer',
510 | 'sgl' => 'application/vnd.stardivision.writer-global',
511 | 'smzip' => 'application/vnd.stepmania.package',
512 | 'sm' => 'application/vnd.stepmania.stepchart',
513 | 'sxc' => 'application/vnd.sun.xml.calc',
514 | 'stc' => 'application/vnd.sun.xml.calc.template',
515 | 'sxd' => 'application/vnd.sun.xml.draw',
516 | 'std' => 'application/vnd.sun.xml.draw.template',
517 | 'sxi' => 'application/vnd.sun.xml.impress',
518 | 'sti' => 'application/vnd.sun.xml.impress.template',
519 | 'sxm' => 'application/vnd.sun.xml.math',
520 | 'sxw' => 'application/vnd.sun.xml.writer',
521 | 'sxg' => 'application/vnd.sun.xml.writer.global',
522 | 'stw' => 'application/vnd.sun.xml.writer.template',
523 | 'sus' => 'application/vnd.sus-calendar',
524 | 'susp' => 'application/vnd.sus-calendar',
525 | 'svd' => 'application/vnd.svd',
526 | 'sis' => 'application/vnd.symbian.install',
527 | 'sisx' => 'application/vnd.symbian.install',
528 | 'xsm' => 'application/vnd.syncml+xml',
529 | 'bdm' => 'application/vnd.syncml.dm+wbxml',
530 | 'xdm' => 'application/vnd.syncml.dm+xml',
531 | 'tao' => 'application/vnd.tao.intent-module-archive',
532 | 'pcap' => 'application/vnd.tcpdump.pcap',
533 | 'cap' => 'application/vnd.tcpdump.pcap',
534 | 'dmp' => 'application/vnd.tcpdump.pcap',
535 | 'tmo' => 'application/vnd.tmobile-livetv',
536 | 'tpt' => 'application/vnd.trid.tpt',
537 | 'mxs' => 'application/vnd.triscape.mxs',
538 | 'tra' => 'application/vnd.trueapp',
539 | 'ufd' => 'application/vnd.ufdl',
540 | 'ufdl' => 'application/vnd.ufdl',
541 | 'utz' => 'application/vnd.uiq.theme',
542 | 'umj' => 'application/vnd.umajin',
543 | 'unityweb' => 'application/vnd.unity',
544 | 'uoml' => 'application/vnd.uoml+xml',
545 | 'vcx' => 'application/vnd.vcx',
546 | 'vsd' => 'application/vnd.visio',
547 | 'vst' => 'application/vnd.visio',
548 | 'vss' => 'application/vnd.visio',
549 | 'vsw' => 'application/vnd.visio',
550 | 'vis' => 'application/vnd.visionary',
551 | 'vsf' => 'application/vnd.vsf',
552 | 'wbxml' => 'application/vnd.wap.wbxml',
553 | 'wmlc' => 'application/vnd.wap.wmlc',
554 | 'wmlsc' => 'application/vnd.wap.wmlscriptc',
555 | 'wtb' => 'application/vnd.webturbo',
556 | 'nbp' => 'application/vnd.wolfram.player',
557 | 'wpd' => 'application/vnd.wordperfect',
558 | 'wqd' => 'application/vnd.wqd',
559 | 'stf' => 'application/vnd.wt.stf',
560 | 'xar' => 'application/vnd.xara',
561 | 'xfdl' => 'application/vnd.xfdl',
562 | 'hvd' => 'application/vnd.yamaha.hv-dic',
563 | 'hvs' => 'application/vnd.yamaha.hv-script',
564 | 'hvp' => 'application/vnd.yamaha.hv-voice',
565 | 'osf' => 'application/vnd.yamaha.openscoreformat',
566 | 'osfpvg' => 'application/vnd.yamaha.openscoreformat.osfpvg+xml',
567 | 'saf' => 'application/vnd.yamaha.smaf-audio',
568 | 'spf' => 'application/vnd.yamaha.smaf-phrase',
569 | 'cmp' => 'application/vnd.yellowriver-custom-menu',
570 | 'zir' => 'application/vnd.zul',
571 | 'zirz' => 'application/vnd.zul',
572 | 'zaz' => 'application/vnd.zzazz.deck+xml',
573 | 'vxml' => 'application/voicexml+xml',
574 | 'wgt' => 'application/widget',
575 | 'hlp' => 'application/winhlp',
576 | 'wsdl' => 'application/wsdl+xml',
577 | 'wspolicy' => 'application/wspolicy+xml',
578 | '7z' => 'application/x-7z-compressed',
579 | 'abw' => 'application/x-abiword',
580 | 'ace' => 'application/x-ace-compressed',
581 | 'dmg' => 'application/x-apple-diskimage',
582 | 'aab' => 'application/x-authorware-bin',
583 | 'x32' => 'application/x-authorware-bin',
584 | 'u32' => 'application/x-authorware-bin',
585 | 'vox' => 'application/x-authorware-bin',
586 | 'aam' => 'application/x-authorware-map',
587 | 'aas' => 'application/x-authorware-seg',
588 | 'bcpio' => 'application/x-bcpio',
589 | 'torrent' => 'application/x-bittorrent',
590 | 'blb' => 'application/x-blorb',
591 | 'blorb' => 'application/x-blorb',
592 | 'bz' => 'application/x-bzip',
593 | 'bz2' => 'application/x-bzip2',
594 | 'boz' => 'application/x-bzip2',
595 | 'cbr' => 'application/x-cbr',
596 | 'cba' => 'application/x-cbr',
597 | 'cbt' => 'application/x-cbr',
598 | 'cbz' => 'application/x-cbr',
599 | 'cb7' => 'application/x-cbr',
600 | 'vcd' => 'application/x-cdlink',
601 | 'cfs' => 'application/x-cfs-compressed',
602 | 'chat' => 'application/x-chat',
603 | 'pgn' => 'application/x-chess-pgn',
604 | 'nsc' => 'application/x-conference',
605 | 'cpio' => 'application/x-cpio',
606 | 'csh' => 'application/x-csh',
607 | 'deb' => 'application/x-debian-package',
608 | 'udeb' => 'application/x-debian-package',
609 | 'dgc' => 'application/x-dgc-compressed',
610 | 'dir' => 'application/x-director',
611 | 'dcr' => 'application/x-director',
612 | 'dxr' => 'application/x-director',
613 | 'cst' => 'application/x-director',
614 | 'cct' => 'application/x-director',
615 | 'cxt' => 'application/x-director',
616 | 'w3d' => 'application/x-director',
617 | 'fgd' => 'application/x-director',
618 | 'swa' => 'application/x-director',
619 | 'wad' => 'application/x-doom',
620 | 'ncx' => 'application/x-dtbncx+xml',
621 | 'dtb' => 'application/x-dtbook+xml',
622 | 'res' => 'application/x-dtbresource+xml',
623 | 'dvi' => 'application/x-dvi',
624 | 'evy' => 'application/x-envoy',
625 | 'eva' => 'application/x-eva',
626 | 'bdf' => 'application/x-font-bdf',
627 | 'gsf' => 'application/x-font-ghostscript',
628 | 'psf' => 'application/x-font-linux-psf',
629 | 'otf' => 'application/x-font-otf',
630 | 'pcf' => 'application/x-font-pcf',
631 | 'snf' => 'application/x-font-snf',
632 | 'ttf' => 'application/x-font-ttf',
633 | 'ttc' => 'application/x-font-ttf',
634 | 'pfa' => 'application/x-font-type1',
635 | 'pfb' => 'application/x-font-type1',
636 | 'pfm' => 'application/x-font-type1',
637 | 'afm' => 'application/x-font-type1',
638 | 'woff' => 'application/x-font-woff',
639 | 'arc' => 'application/x-freearc',
640 | 'spl' => 'application/x-futuresplash',
641 | 'gca' => 'application/x-gca-compressed',
642 | 'ulx' => 'application/x-glulx',
643 | 'gnumeric' => 'application/x-gnumeric',
644 | 'gramps' => 'application/x-gramps-xml',
645 | 'gtar' => 'application/x-gtar',
646 | 'hdf' => 'application/x-hdf',
647 | 'install' => 'application/x-install-instructions',
648 | 'iso' => 'application/x-iso9660-image',
649 | 'jnlp' => 'application/x-java-jnlp-file',
650 | 'latex' => 'application/x-latex',
651 | 'lzh' => 'application/x-lzh-compressed',
652 | 'lha' => 'application/x-lzh-compressed',
653 | 'mie' => 'application/x-mie',
654 | 'prc' => 'application/x-mobipocket-ebook',
655 | 'mobi' => 'application/x-mobipocket-ebook',
656 | 'application' => 'application/x-ms-application',
657 | 'lnk' => 'application/x-ms-shortcut',
658 | 'wmd' => 'application/x-ms-wmd',
659 | 'wmz' => 'application/x-ms-wmz',
660 | 'xbap' => 'application/x-ms-xbap',
661 | 'mdb' => 'application/x-msaccess',
662 | 'obd' => 'application/x-msbinder',
663 | 'crd' => 'application/x-mscardfile',
664 | 'clp' => 'application/x-msclip',
665 | 'exe' => 'application/x-msdownload',
666 | 'dll' => 'application/x-msdownload',
667 | 'com' => 'application/x-msdownload',
668 | 'bat' => 'application/x-msdownload',
669 | 'msi' => 'application/x-msdownload',
670 | 'mvb' => 'application/x-msmediaview',
671 | 'm13' => 'application/x-msmediaview',
672 | 'm14' => 'application/x-msmediaview',
673 | 'wmf' => 'application/x-msmetafile',
674 | 'emf' => 'application/x-msmetafile',
675 | 'emz' => 'application/x-msmetafile',
676 | 'mny' => 'application/x-msmoney',
677 | 'pub' => 'application/x-mspublisher',
678 | 'scd' => 'application/x-msschedule',
679 | 'trm' => 'application/x-msterminal',
680 | 'wri' => 'application/x-mswrite',
681 | 'nc' => 'application/x-netcdf',
682 | 'cdf' => 'application/x-netcdf',
683 | 'nzb' => 'application/x-nzb',
684 | 'p12' => 'application/x-pkcs12',
685 | 'pfx' => 'application/x-pkcs12',
686 | 'p7b' => 'application/x-pkcs7-certificates',
687 | 'spc' => 'application/x-pkcs7-certificates',
688 | 'p7r' => 'application/x-pkcs7-certreqresp',
689 | 'rar' => 'application/x-rar-compressed',
690 | 'ris' => 'application/x-research-info-systems',
691 | 'sh' => 'application/x-sh',
692 | 'shar' => 'application/x-shar',
693 | 'swf' => 'application/x-shockwave-flash',
694 | 'xap' => 'application/x-silverlight-app',
695 | 'sql' => 'application/x-sql',
696 | 'sit' => 'application/x-stuffit',
697 | 'sitx' => 'application/x-stuffitx',
698 | 'srt' => 'application/x-subrip',
699 | 'sv4cpio' => 'application/x-sv4cpio',
700 | 'sv4crc' => 'application/x-sv4crc',
701 | 't3' => 'application/x-t3vm-image',
702 | 'gam' => 'application/x-tads',
703 | 'tar' => 'application/x-tar',
704 | 'tcl' => 'application/x-tcl',
705 | 'tex' => 'application/x-tex',
706 | 'tfm' => 'application/x-tex-tfm',
707 | 'texinfo' => 'application/x-texinfo',
708 | 'texi' => 'application/x-texinfo',
709 | 'obj' => 'application/x-tgif',
710 | 'ustar' => 'application/x-ustar',
711 | 'src' => 'application/x-wais-source',
712 | 'der' => 'application/x-x509-ca-cert',
713 | 'crt' => 'application/x-x509-ca-cert',
714 | 'fig' => 'application/x-xfig',
715 | 'xlf' => 'application/x-xliff+xml',
716 | 'xpi' => 'application/x-xpinstall',
717 | 'xz' => 'application/x-xz',
718 | 'z1' => 'application/x-zmachine',
719 | 'z2' => 'application/x-zmachine',
720 | 'z3' => 'application/x-zmachine',
721 | 'z4' => 'application/x-zmachine',
722 | 'z5' => 'application/x-zmachine',
723 | 'z6' => 'application/x-zmachine',
724 | 'z7' => 'application/x-zmachine',
725 | 'z8' => 'application/x-zmachine',
726 | 'xaml' => 'application/xaml+xml',
727 | 'xdf' => 'application/xcap-diff+xml',
728 | 'xenc' => 'application/xenc+xml',
729 | 'xhtml' => 'application/xhtml+xml',
730 | 'xht' => 'application/xhtml+xml',
731 | 'xml' => 'application/xml',
732 | 'xsl' => 'application/xml',
733 | 'dtd' => 'application/xml-dtd',
734 | 'xop' => 'application/xop+xml',
735 | 'xpl' => 'application/xproc+xml',
736 | 'xslt' => 'application/xslt+xml',
737 | 'xspf' => 'application/xspf+xml',
738 | 'mxml' => 'application/xv+xml',
739 | 'xhvml' => 'application/xv+xml',
740 | 'xvml' => 'application/xv+xml',
741 | 'xvm' => 'application/xv+xml',
742 | 'yang' => 'application/yang',
743 | 'yin' => 'application/yin+xml',
744 | 'zip' => 'application/zip',
745 | 'sketch' => 'application/zip',
746 | 'adp' => 'audio/adpcm',
747 | 'au' => 'audio/basic',
748 | 'snd' => 'audio/basic',
749 | 'mid' => 'audio/midi',
750 | 'midi' => 'audio/midi',
751 | 'kar' => 'audio/midi',
752 | 'rmi' => 'audio/midi',
753 | 'mp4a' => 'audio/mp4',
754 | 'mpga' => 'audio/mpeg',
755 | 'mp2' => 'audio/mpeg',
756 | 'mp2a' => 'audio/mpeg',
757 | 'mp3' => 'audio/mpeg',
758 | 'm2a' => 'audio/mpeg',
759 | 'm3a' => 'audio/mpeg',
760 | 'oga' => 'audio/ogg',
761 | 'ogg' => 'audio/ogg',
762 | 'spx' => 'audio/ogg',
763 | 's3m' => 'audio/s3m',
764 | 'sil' => 'audio/silk',
765 | 'uva' => 'audio/vnd.dece.audio',
766 | 'uvva' => 'audio/vnd.dece.audio',
767 | 'eol' => 'audio/vnd.digital-winds',
768 | 'dra' => 'audio/vnd.dra',
769 | 'dts' => 'audio/vnd.dts',
770 | 'dtshd' => 'audio/vnd.dts.hd',
771 | 'lvp' => 'audio/vnd.lucent.voice',
772 | 'pya' => 'audio/vnd.ms-playready.media.pya',
773 | 'ecelp4800' => 'audio/vnd.nuera.ecelp4800',
774 | 'ecelp7470' => 'audio/vnd.nuera.ecelp7470',
775 | 'ecelp9600' => 'audio/vnd.nuera.ecelp9600',
776 | 'rip' => 'audio/vnd.rip',
777 | 'weba' => 'audio/webm',
778 | 'aac' => 'audio/x-aac',
779 | 'aif' => 'audio/x-aiff',
780 | 'aiff' => 'audio/x-aiff',
781 | 'aifc' => 'audio/x-aiff',
782 | 'caf' => 'audio/x-caf',
783 | 'flac' => 'audio/x-flac',
784 | 'mka' => 'audio/x-matroska',
785 | 'm3u' => 'audio/x-mpegurl',
786 | 'wax' => 'audio/x-ms-wax',
787 | 'wma' => 'audio/x-ms-wma',
788 | 'ram' => 'audio/x-pn-realaudio',
789 | 'ra' => 'audio/x-pn-realaudio',
790 | 'rmp' => 'audio/x-pn-realaudio-plugin',
791 | 'wav' => 'audio/x-wav',
792 | 'xm' => 'audio/xm',
793 | 'cdx' => 'chemical/x-cdx',
794 | 'cif' => 'chemical/x-cif',
795 | 'cmdf' => 'chemical/x-cmdf',
796 | 'cml' => 'chemical/x-cml',
797 | 'csml' => 'chemical/x-csml',
798 | 'xyz' => 'chemical/x-xyz',
799 | 'bmp' => 'image/bmp',
800 | 'cgm' => 'image/cgm',
801 | 'g3' => 'image/g3fax',
802 | 'gif' => 'image/gif',
803 | 'heic' => 'image/heic',
804 | 'ief' => 'image/ief',
805 | 'jpeg' => 'image/jpeg',
806 | 'jpg' => 'image/jpeg',
807 | 'jpe' => 'image/jpeg',
808 | 'ktx' => 'image/ktx',
809 | 'png' => 'image/png',
810 | 'btif' => 'image/prs.btif',
811 | 'sgi' => 'image/sgi',
812 | 'svg' => 'image/svg+xml',
813 | 'svgz' => 'image/svg+xml',
814 | 'tiff' => 'image/tiff',
815 | 'tif' => 'image/tiff',
816 | 'psd' => 'image/vnd.adobe.photoshop',
817 | 'uvi' => 'image/vnd.dece.graphic',
818 | 'uvvi' => 'image/vnd.dece.graphic',
819 | 'uvg' => 'image/vnd.dece.graphic',
820 | 'uvvg' => 'image/vnd.dece.graphic',
821 | 'sub' => 'image/vnd.dvb.subtitle',
822 | 'djvu' => 'image/vnd.djvu',
823 | 'djv' => 'image/vnd.djvu',
824 | 'dwg' => 'image/vnd.dwg',
825 | 'dxf' => 'image/vnd.dxf',
826 | 'fbs' => 'image/vnd.fastbidsheet',
827 | 'fpx' => 'image/vnd.fpx',
828 | 'fst' => 'image/vnd.fst',
829 | 'mmr' => 'image/vnd.fujixerox.edmics-mmr',
830 | 'rlc' => 'image/vnd.fujixerox.edmics-rlc',
831 | 'mdi' => 'image/vnd.ms-modi',
832 | 'wdp' => 'image/vnd.ms-photo',
833 | 'npx' => 'image/vnd.net-fpx',
834 | 'wbmp' => 'image/vnd.wap.wbmp',
835 | 'xif' => 'image/vnd.xiff',
836 | 'webp' => 'image/webp',
837 | '3ds' => 'image/x-3ds',
838 | 'dng' => 'image/x-adobe-dng',
839 | 'cr2' => 'image/x-canon-cr2',
840 | 'crw' => 'image/x-canon-crw',
841 | 'ras' => 'image/x-cmu-raster',
842 | 'cmx' => 'image/x-cmx',
843 | 'erf' => 'image/x-epson-erf',
844 | 'fh' => 'image/x-freehand',
845 | 'fhc' => 'image/x-freehand',
846 | 'fh4' => 'image/x-freehand',
847 | 'fh5' => 'image/x-freehand',
848 | 'fh7' => 'image/x-freehand',
849 | 'raf' => 'image/x-fuji-raf',
850 | 'ico' => 'image/x-icon',
851 | 'k25' => 'image/x-kodak-k25',
852 | 'kdc' => 'image/x-kodak-kdc',
853 | 'mrw' => 'image/x-minolta-mrw',
854 | 'sid' => 'image/x-mrsid-image',
855 | 'nef' => 'image/x-nikon-nef',
856 | 'orf' => 'image/x-olympus-orf',
857 | 'raw' => 'image/x-panasonic-raw',
858 | 'pcx' => 'image/x-pcx',
859 | 'pef' => 'image/x-pentax-pef',
860 | 'pic' => 'image/x-pict',
861 | 'pct' => 'image/x-pict',
862 | 'pnm' => 'image/x-portable-anymap',
863 | 'pbm' => 'image/x-portable-bitmap',
864 | 'pgm' => 'image/x-portable-graymap',
865 | 'ppm' => 'image/x-portable-pixmap',
866 | 'rgb' => 'image/x-rgb',
867 | 'x3f' => 'image/x-sigma-x3f',
868 | 'arw' => 'image/x-sony-arw',
869 | 'sr2' => 'image/x-sony-sr2',
870 | 'srf' => 'image/x-sony-srf',
871 | 'tga' => 'image/x-tga',
872 | 'xbm' => 'image/x-xbitmap',
873 | 'xpm' => 'image/x-xpixmap',
874 | 'xwd' => 'image/x-xwindowdump',
875 | 'eml' => 'message/rfc822',
876 | 'mime' => 'message/rfc822',
877 | 'igs' => 'model/iges',
878 | 'iges' => 'model/iges',
879 | 'msh' => 'model/mesh',
880 | 'mesh' => 'model/mesh',
881 | 'silo' => 'model/mesh',
882 | 'dae' => 'model/vnd.collada+xml',
883 | 'dwf' => 'model/vnd.dwf',
884 | 'gdl' => 'model/vnd.gdl',
885 | 'gtw' => 'model/vnd.gtw',
886 | 'mts' => 'model/vnd.mts',
887 | 'vtu' => 'model/vnd.vtu',
888 | 'wrl' => 'model/vrml',
889 | 'vrml' => 'model/vrml',
890 | 'x3db' => 'model/x3d+binary',
891 | 'x3dbz' => 'model/x3d+binary',
892 | 'x3dv' => 'model/x3d+vrml',
893 | 'x3dvz' => 'model/x3d+vrml',
894 | 'x3d' => 'model/x3d+xml',
895 | 'x3dz' => 'model/x3d+xml',
896 | 'appcache' => 'text/cache-manifest',
897 | 'ics' => 'text/calendar',
898 | 'ifb' => 'text/calendar',
899 | 'css' => 'text/css',
900 | 'csv' => 'text/csv',
901 | 'html' => 'text/html',
902 | 'htm' => 'text/html',
903 | 'n3' => 'text/n3',
904 | 'txt' => 'text/plain',
905 | 'text' => 'text/plain',
906 | 'conf' => 'text/plain',
907 | 'def' => 'text/plain',
908 | 'list' => 'text/plain',
909 | 'log' => 'text/plain',
910 | 'in' => 'text/plain',
911 | 'dsc' => 'text/prs.lines.tag',
912 | 'rtx' => 'text/richtext',
913 | 'sgml' => 'text/sgml',
914 | 'sgm' => 'text/sgml',
915 | 'tsv' => 'text/tab-separated-values',
916 | 't' => 'text/troff',
917 | 'tr' => 'text/troff',
918 | 'roff' => 'text/troff',
919 | 'man' => 'text/troff',
920 | 'me' => 'text/troff',
921 | 'ms' => 'text/troff',
922 | 'ttl' => 'text/turtle',
923 | 'uri' => 'text/uri-list',
924 | 'uris' => 'text/uri-list',
925 | 'urls' => 'text/uri-list',
926 | 'vcard' => 'text/vcard',
927 | 'curl' => 'text/vnd.curl',
928 | 'dcurl' => 'text/vnd.curl.dcurl',
929 | 'scurl' => 'text/vnd.curl.scurl',
930 | 'mcurl' => 'text/vnd.curl.mcurl',
931 | 'fly' => 'text/vnd.fly',
932 | 'flx' => 'text/vnd.fmi.flexstor',
933 | 'gv' => 'text/vnd.graphviz',
934 | '3dml' => 'text/vnd.in3d.3dml',
935 | 'spot' => 'text/vnd.in3d.spot',
936 | 'jad' => 'text/vnd.sun.j2me.app-descriptor',
937 | 'wml' => 'text/vnd.wap.wml',
938 | 'wmls' => 'text/vnd.wap.wmlscript',
939 | 's' => 'text/x-asm',
940 | 'asm' => 'text/x-asm',
941 | 'c' => 'text/x-c',
942 | 'cc' => 'text/x-c',
943 | 'cxx' => 'text/x-c',
944 | 'cpp' => 'text/x-c',
945 | 'h' => 'text/x-c',
946 | 'hh' => 'text/x-c',
947 | 'dic' => 'text/x-c',
948 | 'f' => 'text/x-fortran',
949 | 'for' => 'text/x-fortran',
950 | 'f77' => 'text/x-fortran',
951 | 'f90' => 'text/x-fortran',
952 | 'java' => 'text/x-java-source',
953 | 'opml' => 'text/x-opml',
954 | 'p' => 'text/x-pascal',
955 | 'pas' => 'text/x-pascal',
956 | 'php' => 'text/x-php',
957 | 'phtml' => 'text/x-php',
958 | 'php3' => 'text/x-php',
959 | 'php4' => 'text/x-php',
960 | 'php5' => 'text/x-php',
961 | 'php7' => 'text/x-php',
962 | 'phps' => 'text/x-php',
963 | 'nfo' => 'text/x-nfo',
964 | 'etx' => 'text/x-setext',
965 | 'sfv' => 'text/x-sfv',
966 | 'uu' => 'text/x-uuencode',
967 | 'vcs' => 'text/x-vcalendar',
968 | 'vcf' => 'text/x-vcard',
969 | '3gp' => 'video/3gpp',
970 | '3g2' => 'video/3gpp2',
971 | 'h261' => 'video/h261',
972 | 'h263' => 'video/h263',
973 | 'h264' => 'video/h264',
974 | 'jpgv' => 'video/jpeg',
975 | 'jpm' => 'video/jpm',
976 | 'jpgm' => 'video/jpm',
977 | 'mj2' => 'video/mj2',
978 | 'mjp2' => 'video/mj2',
979 | 'mp4' => 'video/mp4',
980 | 'mp4v' => 'video/mp4',
981 | 'mpg4' => 'video/mp4',
982 | 'mpeg' => 'video/mpeg',
983 | 'mpg' => 'video/mpeg',
984 | 'mpe' => 'video/mpeg',
985 | 'm1v' => 'video/mpeg',
986 | 'm2v' => 'video/mpeg',
987 | 'ogv' => 'video/ogg',
988 | 'qt' => 'video/quicktime',
989 | 'mov' => 'video/quicktime',
990 | 'uvh' => 'video/vnd.dece.hd',
991 | 'uvvh' => 'video/vnd.dece.hd',
992 | 'uvm' => 'video/vnd.dece.mobile',
993 | 'uvvm' => 'video/vnd.dece.mobile',
994 | 'uvp' => 'video/vnd.dece.pd',
995 | 'uvvp' => 'video/vnd.dece.pd',
996 | 'uvs' => 'video/vnd.dece.sd',
997 | 'uvvs' => 'video/vnd.dece.sd',
998 | 'uvv' => 'video/vnd.dece.video',
999 | 'uvvv' => 'video/vnd.dece.video',
1000 | 'dvb' => 'video/vnd.dvb.file',
1001 | 'fvt' => 'video/vnd.fvt',
1002 | 'mxu' => 'video/vnd.mpegurl',
1003 | 'm4u' => 'video/vnd.mpegurl',
1004 | 'pyv' => 'video/vnd.ms-playready.media.pyv',
1005 | 'uvu' => 'video/vnd.uvvu.mp4',
1006 | 'uvvu' => 'video/vnd.uvvu.mp4',
1007 | 'viv' => 'video/vnd.vivo',
1008 | 'webm' => 'video/webm',
1009 | 'f4v' => 'video/x-f4v',
1010 | 'fli' => 'video/x-fli',
1011 | 'flv' => 'video/x-flv',
1012 | 'm4v' => 'video/x-m4v',
1013 | 'mkv' => 'video/x-matroska',
1014 | 'mk3d' => 'video/x-matroska',
1015 | 'mks' => 'video/x-matroska',
1016 | 'mng' => 'video/x-mng',
1017 | 'asf' => 'video/x-ms-asf',
1018 | 'asx' => 'video/x-ms-asf',
1019 | 'vob' => 'video/x-ms-vob',
1020 | 'wm' => 'video/x-ms-wm',
1021 | 'wmv' => 'video/x-ms-wmv',
1022 | 'wmx' => 'video/x-ms-wmx',
1023 | 'wvx' => 'video/x-ms-wvx',
1024 | 'avi' => 'video/x-msvideo',
1025 | 'movie' => 'video/x-sgi-movie',
1026 | 'smv' => 'video/x-smv',
1027 | 'ice' => 'x-conference/x-cooltalk',
1028 | );
1029 |
1030 | protected $typeToExtensions = array(
1031 | 'application/andrew-inset' => array('ez'),
1032 | 'application/applixware' => array('aw'),
1033 | 'application/atom+xml' => array('atom'),
1034 | 'application/atomcat+xml' => array('atomcat'),
1035 | 'application/atomsvc+xml' => array('atomsvc'),
1036 | 'application/ccxml+xml' => array('ccxml'),
1037 | 'application/cdmi-capability' => array('cdmia'),
1038 | 'application/cdmi-container' => array('cdmic'),
1039 | 'application/cdmi-domain' => array('cdmid'),
1040 | 'application/cdmi-object' => array('cdmio'),
1041 | 'application/cdmi-queue' => array('cdmiq'),
1042 | 'application/cu-seeme' => array('cu'),
1043 | 'application/davmount+xml' => array('davmount'),
1044 | 'application/docbook+xml' => array('dbk'),
1045 | 'application/dssc+der' => array('dssc'),
1046 | 'application/dssc+xml' => array('xdssc'),
1047 | 'application/ecmascript' => array('ecma'),
1048 | 'application/emma+xml' => array('emma'),
1049 | 'application/epub+zip' => array('epub'),
1050 | 'application/exi' => array('exi'),
1051 | 'application/font-tdpfr' => array('pfr'),
1052 | 'application/gml+xml' => array('gml'),
1053 | 'application/gpx+xml' => array('gpx'),
1054 | 'application/gxf' => array('gxf'),
1055 | 'application/hyperstudio' => array('stk'),
1056 | 'application/inkml+xml' => array('ink', 'inkml'),
1057 | 'application/ipfix' => array('ipfix'),
1058 | 'application/java-archive' => array('jar'),
1059 | 'application/java-serialized-object' => array('ser'),
1060 | 'application/java-vm' => array('class'),
1061 | 'application/javascript' => array('js'),
1062 | 'application/json' => array('json'),
1063 | 'application/jsonml+json' => array('jsonml'),
1064 | 'application/lost+xml' => array('lostxml'),
1065 | 'application/mac-binhex40' => array('hqx'),
1066 | 'application/mac-compactpro' => array('cpt'),
1067 | 'application/mads+xml' => array('mads'),
1068 | 'application/marc' => array('mrc'),
1069 | 'application/marcxml+xml' => array('mrcx'),
1070 | 'application/mathematica' => array('ma', 'nb', 'mb'),
1071 | 'application/mathml+xml' => array('mathml'),
1072 | 'application/mbox' => array('mbox'),
1073 | 'application/mediaservercontrol+xml' => array('mscml'),
1074 | 'application/metalink+xml' => array('metalink'),
1075 | 'application/metalink4+xml' => array('meta4'),
1076 | 'application/mets+xml' => array('mets'),
1077 | 'application/mods+xml' => array('mods'),
1078 | 'application/mp21' => array('m21', 'mp21'),
1079 | 'application/mp4' => array('mp4s'),
1080 | 'application/msword' => array('doc', 'dot'),
1081 | 'application/mxf' => array('mxf'),
1082 | 'application/octet-stream' => array('bin', 'dms', 'lrf', 'mar', 'so', 'dist', 'distz', 'pkg', 'bpk', 'dump', 'elc', 'deploy'),
1083 | 'application/oda' => array('oda'),
1084 | 'application/oebps-package+xml' => array('opf'),
1085 | 'application/ogg' => array('ogx'),
1086 | 'application/omdoc+xml' => array('omdoc'),
1087 | 'application/onenote' => array('onetoc', 'onetoc2', 'onetmp', 'onepkg'),
1088 | 'application/oxps' => array('oxps'),
1089 | 'application/patch-ops-error+xml' => array('xer'),
1090 | 'application/pdf' => array('pdf'),
1091 | 'application/pgp-encrypted' => array('pgp'),
1092 | 'application/pgp-signature' => array('asc', 'sig'),
1093 | 'application/pics-rules' => array('prf'),
1094 | 'application/pkcs10' => array('p10'),
1095 | 'application/pkcs7-mime' => array('p7m', 'p7c'),
1096 | 'application/pkcs7-signature' => array('p7s'),
1097 | 'application/pkcs8' => array('p8'),
1098 | 'application/pkix-attr-cert' => array('ac'),
1099 | 'application/pkix-cert' => array('cer'),
1100 | 'application/pkix-crl' => array('crl'),
1101 | 'application/pkix-pkipath' => array('pkipath'),
1102 | 'application/pkixcmp' => array('pki'),
1103 | 'application/pls+xml' => array('pls'),
1104 | 'application/postscript' => array('ai', 'eps', 'ps'),
1105 | 'application/prs.cww' => array('cww'),
1106 | 'application/pskc+xml' => array('pskcxml'),
1107 | 'application/rdf+xml' => array('rdf'),
1108 | 'application/reginfo+xml' => array('rif'),
1109 | 'application/relax-ng-compact-syntax' => array('rnc'),
1110 | 'application/resource-lists+xml' => array('rl'),
1111 | 'application/resource-lists-diff+xml' => array('rld'),
1112 | 'application/rls-services+xml' => array('rs'),
1113 | 'application/rpki-ghostbusters' => array('gbr'),
1114 | 'application/rpki-manifest' => array('mft'),
1115 | 'application/rpki-roa' => array('roa'),
1116 | 'application/rsd+xml' => array('rsd'),
1117 | 'application/rss+xml' => array('rss'),
1118 | 'application/rtf' => array('rtf'),
1119 | 'application/sbml+xml' => array('sbml'),
1120 | 'application/scvp-cv-request' => array('scq'),
1121 | 'application/scvp-cv-response' => array('scs'),
1122 | 'application/scvp-vp-request' => array('spq'),
1123 | 'application/scvp-vp-response' => array('spp'),
1124 | 'application/sdp' => array('sdp'),
1125 | 'application/set-payment-initiation' => array('setpay'),
1126 | 'application/set-registration-initiation' => array('setreg'),
1127 | 'application/shf+xml' => array('shf'),
1128 | 'application/smil+xml' => array('smi', 'smil'),
1129 | 'application/sparql-query' => array('rq'),
1130 | 'application/sparql-results+xml' => array('srx'),
1131 | 'application/srgs' => array('gram'),
1132 | 'application/srgs+xml' => array('grxml'),
1133 | 'application/sru+xml' => array('sru'),
1134 | 'application/ssdl+xml' => array('ssdl'),
1135 | 'application/ssml+xml' => array('ssml'),
1136 | 'application/tei+xml' => array('tei', 'teicorpus'),
1137 | 'application/thraud+xml' => array('tfi'),
1138 | 'application/timestamped-data' => array('tsd'),
1139 | 'application/vnd.3gpp.pic-bw-large' => array('plb'),
1140 | 'application/vnd.3gpp.pic-bw-small' => array('psb'),
1141 | 'application/vnd.3gpp.pic-bw-var' => array('pvb'),
1142 | 'application/vnd.3gpp2.tcap' => array('tcap'),
1143 | 'application/vnd.3m.post-it-notes' => array('pwn'),
1144 | 'application/vnd.accpac.simply.aso' => array('aso'),
1145 | 'application/vnd.accpac.simply.imp' => array('imp'),
1146 | 'application/vnd.acucobol' => array('acu'),
1147 | 'application/vnd.acucorp' => array('atc', 'acutc'),
1148 | 'application/vnd.adobe.air-application-installer-package+zip' => array('air'),
1149 | 'application/vnd.adobe.formscentral.fcdt' => array('fcdt'),
1150 | 'application/vnd.adobe.fxp' => array('fxp', 'fxpl'),
1151 | 'application/vnd.adobe.xdp+xml' => array('xdp'),
1152 | 'application/vnd.adobe.xfdf' => array('xfdf'),
1153 | 'application/vnd.ahead.space' => array('ahead'),
1154 | 'application/vnd.airzip.filesecure.azf' => array('azf'),
1155 | 'application/vnd.airzip.filesecure.azs' => array('azs'),
1156 | 'application/vnd.amazon.ebook' => array('azw'),
1157 | 'application/vnd.americandynamics.acc' => array('acc'),
1158 | 'application/vnd.amiga.ami' => array('ami'),
1159 | 'application/vnd.android.package-archive' => array('apk'),
1160 | 'application/vnd.anser-web-certificate-issue-initiation' => array('cii'),
1161 | 'application/vnd.anser-web-funds-transfer-initiation' => array('fti'),
1162 | 'application/vnd.antix.game-component' => array('atx'),
1163 | 'application/vnd.apple.installer+xml' => array('mpkg'),
1164 | 'application/vnd.apple.mpegurl' => array('m3u8'),
1165 | 'application/vnd.aristanetworks.swi' => array('swi'),
1166 | 'application/vnd.astraea-software.iota' => array('iota'),
1167 | 'application/vnd.audiograph' => array('aep'),
1168 | 'application/vnd.blueice.multipass' => array('mpm'),
1169 | 'application/vnd.bmi' => array('bmi'),
1170 | 'application/vnd.businessobjects' => array('rep'),
1171 | 'application/vnd.chemdraw+xml' => array('cdxml'),
1172 | 'application/vnd.chipnuts.karaoke-mmd' => array('mmd'),
1173 | 'application/vnd.cinderella' => array('cdy'),
1174 | 'application/vnd.claymore' => array('cla'),
1175 | 'application/vnd.cloanto.rp9' => array('rp9'),
1176 | 'application/vnd.clonk.c4group' => array('c4g', 'c4d', 'c4f', 'c4p', 'c4u'),
1177 | 'application/vnd.cluetrust.cartomobile-config' => array('c11amc'),
1178 | 'application/vnd.cluetrust.cartomobile-config-pkg' => array('c11amz'),
1179 | 'application/vnd.commonspace' => array('csp'),
1180 | 'application/vnd.contact.cmsg' => array('cdbcmsg'),
1181 | 'application/vnd.cosmocaller' => array('cmc'),
1182 | 'application/vnd.crick.clicker' => array('clkx'),
1183 | 'application/vnd.crick.clicker.keyboard' => array('clkk'),
1184 | 'application/vnd.crick.clicker.palette' => array('clkp'),
1185 | 'application/vnd.crick.clicker.template' => array('clkt'),
1186 | 'application/vnd.crick.clicker.wordbank' => array('clkw'),
1187 | 'application/vnd.criticaltools.wbs+xml' => array('wbs'),
1188 | 'application/vnd.ctc-posml' => array('pml'),
1189 | 'application/vnd.cups-ppd' => array('ppd'),
1190 | 'application/vnd.curl.car' => array('car'),
1191 | 'application/vnd.curl.pcurl' => array('pcurl'),
1192 | 'application/vnd.dart' => array('dart'),
1193 | 'application/vnd.data-vision.rdz' => array('rdz'),
1194 | 'application/vnd.dece.data' => array('uvf', 'uvvf', 'uvd', 'uvvd'),
1195 | 'application/vnd.dece.ttml+xml' => array('uvt', 'uvvt'),
1196 | 'application/vnd.dece.unspecified' => array('uvx', 'uvvx'),
1197 | 'application/vnd.dece.zip' => array('uvz', 'uvvz'),
1198 | 'application/vnd.denovo.fcselayout-link' => array('fe_launch'),
1199 | 'application/vnd.dna' => array('dna'),
1200 | 'application/vnd.dolby.mlp' => array('mlp'),
1201 | 'application/vnd.dpgraph' => array('dpg'),
1202 | 'application/vnd.dreamfactory' => array('dfac'),
1203 | 'application/vnd.ds-keypoint' => array('kpxx'),
1204 | 'application/vnd.dvb.ait' => array('ait'),
1205 | 'application/vnd.dvb.service' => array('svc'),
1206 | 'application/vnd.dynageo' => array('geo'),
1207 | 'application/vnd.ecowin.chart' => array('mag'),
1208 | 'application/vnd.enliven' => array('nml'),
1209 | 'application/vnd.epson.esf' => array('esf'),
1210 | 'application/vnd.epson.msf' => array('msf'),
1211 | 'application/vnd.epson.quickanime' => array('qam'),
1212 | 'application/vnd.epson.salt' => array('slt'),
1213 | 'application/vnd.epson.ssf' => array('ssf'),
1214 | 'application/vnd.eszigno3+xml' => array('es3', 'et3'),
1215 | 'application/vnd.ezpix-album' => array('ez2'),
1216 | 'application/vnd.ezpix-package' => array('ez3'),
1217 | 'application/vnd.fdf' => array('fdf'),
1218 | 'application/vnd.fdsn.mseed' => array('mseed'),
1219 | 'application/vnd.fdsn.seed' => array('seed', 'dataless'),
1220 | 'application/vnd.flographit' => array('gph'),
1221 | 'application/vnd.fluxtime.clip' => array('ftc'),
1222 | 'application/vnd.framemaker' => array('fm', 'frame', 'maker', 'book'),
1223 | 'application/vnd.frogans.fnc' => array('fnc'),
1224 | 'application/vnd.frogans.ltf' => array('ltf'),
1225 | 'application/vnd.fsc.weblaunch' => array('fsc'),
1226 | 'application/vnd.fujitsu.oasys' => array('oas'),
1227 | 'application/vnd.fujitsu.oasys2' => array('oa2'),
1228 | 'application/vnd.fujitsu.oasys3' => array('oa3'),
1229 | 'application/vnd.fujitsu.oasysgp' => array('fg5'),
1230 | 'application/vnd.fujitsu.oasysprs' => array('bh2'),
1231 | 'application/vnd.fujixerox.ddd' => array('ddd'),
1232 | 'application/vnd.fujixerox.docuworks' => array('xdw'),
1233 | 'application/vnd.fujixerox.docuworks.binder' => array('xbd'),
1234 | 'application/vnd.fuzzysheet' => array('fzs'),
1235 | 'application/vnd.genomatix.tuxedo' => array('txd'),
1236 | 'application/vnd.geogebra.file' => array('ggb'),
1237 | 'application/vnd.geogebra.tool' => array('ggt'),
1238 | 'application/vnd.geometry-explorer' => array('gex', 'gre'),
1239 | 'application/vnd.geonext' => array('gxt'),
1240 | 'application/vnd.geoplan' => array('g2w'),
1241 | 'application/vnd.geospace' => array('g3w'),
1242 | 'application/vnd.gmx' => array('gmx'),
1243 | 'application/vnd.google-earth.kml+xml' => array('kml'),
1244 | 'application/vnd.google-earth.kmz' => array('kmz'),
1245 | 'application/vnd.grafeq' => array('gqf', 'gqs'),
1246 | 'application/vnd.groove-account' => array('gac'),
1247 | 'application/vnd.groove-help' => array('ghf'),
1248 | 'application/vnd.groove-identity-message' => array('gim'),
1249 | 'application/vnd.groove-injector' => array('grv'),
1250 | 'application/vnd.groove-tool-message' => array('gtm'),
1251 | 'application/vnd.groove-tool-template' => array('tpl'),
1252 | 'application/vnd.groove-vcard' => array('vcg'),
1253 | 'application/vnd.hal+xml' => array('hal'),
1254 | 'application/vnd.handheld-entertainment+xml' => array('zmm'),
1255 | 'application/vnd.hbci' => array('hbci'),
1256 | 'application/vnd.hhe.lesson-player' => array('les'),
1257 | 'application/vnd.hp-hpgl' => array('hpgl'),
1258 | 'application/vnd.hp-hpid' => array('hpid'),
1259 | 'application/vnd.hp-hps' => array('hps'),
1260 | 'application/vnd.hp-jlyt' => array('jlt'),
1261 | 'application/vnd.hp-pcl' => array('pcl'),
1262 | 'application/vnd.hp-pclxl' => array('pclxl'),
1263 | 'application/vnd.hydrostatix.sof-data' => array('sfd-hdstx'),
1264 | 'application/vnd.ibm.minipay' => array('mpy'),
1265 | 'application/vnd.ibm.modcap' => array('afp', 'listafp', 'list3820'),
1266 | 'application/vnd.ibm.rights-management' => array('irm'),
1267 | 'application/vnd.ibm.secure-container' => array('sc'),
1268 | 'application/vnd.iccprofile' => array('icc', 'icm'),
1269 | 'application/vnd.igloader' => array('igl'),
1270 | 'application/vnd.immervision-ivp' => array('ivp'),
1271 | 'application/vnd.immervision-ivu' => array('ivu'),
1272 | 'application/vnd.insors.igm' => array('igm'),
1273 | 'application/vnd.intercon.formnet' => array('xpw', 'xpx'),
1274 | 'application/vnd.intergeo' => array('i2g'),
1275 | 'application/vnd.intu.qbo' => array('qbo'),
1276 | 'application/vnd.intu.qfx' => array('qfx'),
1277 | 'application/vnd.ipunplugged.rcprofile' => array('rcprofile'),
1278 | 'application/vnd.irepository.package+xml' => array('irp'),
1279 | 'application/vnd.is-xpr' => array('xpr'),
1280 | 'application/vnd.isac.fcs' => array('fcs'),
1281 | 'application/vnd.jam' => array('jam'),
1282 | 'application/vnd.jcp.javame.midlet-rms' => array('rms'),
1283 | 'application/vnd.jisp' => array('jisp'),
1284 | 'application/vnd.joost.joda-archive' => array('joda'),
1285 | 'application/vnd.kahootz' => array('ktz', 'ktr'),
1286 | 'application/vnd.kde.karbon' => array('karbon'),
1287 | 'application/vnd.kde.kchart' => array('chrt'),
1288 | 'application/vnd.kde.kformula' => array('kfo'),
1289 | 'application/vnd.kde.kivio' => array('flw'),
1290 | 'application/vnd.kde.kontour' => array('kon'),
1291 | 'application/vnd.kde.kpresenter' => array('kpr', 'kpt'),
1292 | 'application/vnd.kde.kspread' => array('ksp'),
1293 | 'application/vnd.kde.kword' => array('kwd', 'kwt'),
1294 | 'application/vnd.kenameaapp' => array('htke'),
1295 | 'application/vnd.kidspiration' => array('kia'),
1296 | 'application/vnd.kinar' => array('kne', 'knp'),
1297 | 'application/vnd.koan' => array('skp', 'skd', 'skt', 'skm'),
1298 | 'application/vnd.kodak-descriptor' => array('sse'),
1299 | 'application/vnd.las.las+xml' => array('lasxml'),
1300 | 'application/vnd.llamagraphics.life-balance.desktop' => array('lbd'),
1301 | 'application/vnd.llamagraphics.life-balance.exchange+xml' => array('lbe'),
1302 | 'application/vnd.lotus-1-2-3' => array('123'),
1303 | 'application/vnd.lotus-approach' => array('apr'),
1304 | 'application/vnd.lotus-freelance' => array('pre'),
1305 | 'application/vnd.lotus-notes' => array('nsf'),
1306 | 'application/vnd.lotus-organizer' => array('org'),
1307 | 'application/vnd.lotus-screencam' => array('scm'),
1308 | 'application/vnd.lotus-wordpro' => array('lwp'),
1309 | 'application/vnd.macports.portpkg' => array('portpkg'),
1310 | 'application/vnd.mcd' => array('mcd'),
1311 | 'application/vnd.medcalcdata' => array('mc1'),
1312 | 'application/vnd.mediastation.cdkey' => array('cdkey'),
1313 | 'application/vnd.mfer' => array('mwf'),
1314 | 'application/vnd.mfmp' => array('mfm'),
1315 | 'application/vnd.micrografx.flo' => array('flo'),
1316 | 'application/vnd.micrografx.igx' => array('igx'),
1317 | 'application/vnd.mif' => array('mif'),
1318 | 'application/vnd.mobius.daf' => array('daf'),
1319 | 'application/vnd.mobius.dis' => array('dis'),
1320 | 'application/vnd.mobius.mbk' => array('mbk'),
1321 | 'application/vnd.mobius.mqy' => array('mqy'),
1322 | 'application/vnd.mobius.msl' => array('msl'),
1323 | 'application/vnd.mobius.plc' => array('plc'),
1324 | 'application/vnd.mobius.txf' => array('txf'),
1325 | 'application/vnd.mophun.application' => array('mpn'),
1326 | 'application/vnd.mophun.certificate' => array('mpc'),
1327 | 'application/vnd.mozilla.xul+xml' => array('xul'),
1328 | 'application/vnd.ms-artgalry' => array('cil'),
1329 | 'application/vnd.ms-cab-compressed' => array('cab'),
1330 | 'application/vnd.ms-excel' => array('xls', 'xlm', 'xla', 'xlc', 'xlt', 'xlw'),
1331 | 'application/vnd.ms-excel.addin.macroenabled.12' => array('xlam'),
1332 | 'application/vnd.ms-excel.sheet.binary.macroenabled.12' => array('xlsb'),
1333 | 'application/vnd.ms-excel.sheet.macroenabled.12' => array('xlsm'),
1334 | 'application/vnd.ms-excel.template.macroenabled.12' => array('xltm'),
1335 | 'application/vnd.ms-fontobject' => array('eot'),
1336 | 'application/vnd.ms-htmlhelp' => array('chm'),
1337 | 'application/vnd.ms-ims' => array('ims'),
1338 | 'application/vnd.ms-lrm' => array('lrm'),
1339 | 'application/vnd.ms-officetheme' => array('thmx'),
1340 | 'application/vnd.ms-pki.seccat' => array('cat'),
1341 | 'application/vnd.ms-pki.stl' => array('stl'),
1342 | 'application/vnd.ms-powerpoint' => array('ppt', 'pps', 'pot'),
1343 | 'application/vnd.ms-powerpoint.addin.macroenabled.12' => array('ppam'),
1344 | 'application/vnd.ms-powerpoint.presentation.macroenabled.12' => array('pptm'),
1345 | 'application/vnd.ms-powerpoint.slide.macroenabled.12' => array('sldm'),
1346 | 'application/vnd.ms-powerpoint.slideshow.macroenabled.12' => array('ppsm'),
1347 | 'application/vnd.ms-powerpoint.template.macroenabled.12' => array('potm'),
1348 | 'application/vnd.ms-project' => array('mpp', 'mpt'),
1349 | 'application/vnd.ms-word.document.macroenabled.12' => array('docm'),
1350 | 'application/vnd.ms-word.template.macroenabled.12' => array('dotm'),
1351 | 'application/vnd.ms-works' => array('wps', 'wks', 'wcm', 'wdb'),
1352 | 'application/vnd.ms-wpl' => array('wpl'),
1353 | 'application/vnd.ms-xpsdocument' => array('xps'),
1354 | 'application/vnd.mseq' => array('mseq'),
1355 | 'application/vnd.musician' => array('mus'),
1356 | 'application/vnd.muvee.style' => array('msty'),
1357 | 'application/vnd.mynfc' => array('taglet'),
1358 | 'application/vnd.neurolanguage.nlu' => array('nlu'),
1359 | 'application/vnd.nitf' => array('ntf', 'nitf'),
1360 | 'application/vnd.noblenet-directory' => array('nnd'),
1361 | 'application/vnd.noblenet-sealer' => array('nns'),
1362 | 'application/vnd.noblenet-web' => array('nnw'),
1363 | 'application/vnd.nokia.n-gage.data' => array('ngdat'),
1364 | 'application/vnd.nokia.n-gage.symbian.install' => array('n-gage'),
1365 | 'application/vnd.nokia.radio-preset' => array('rpst'),
1366 | 'application/vnd.nokia.radio-presets' => array('rpss'),
1367 | 'application/vnd.novadigm.edm' => array('edm'),
1368 | 'application/vnd.novadigm.edx' => array('edx'),
1369 | 'application/vnd.novadigm.ext' => array('ext'),
1370 | 'application/vnd.oasis.opendocument.chart' => array('odc'),
1371 | 'application/vnd.oasis.opendocument.chart-template' => array('otc'),
1372 | 'application/vnd.oasis.opendocument.database' => array('odb'),
1373 | 'application/vnd.oasis.opendocument.formula' => array('odf'),
1374 | 'application/vnd.oasis.opendocument.formula-template' => array('odft'),
1375 | 'application/vnd.oasis.opendocument.graphics' => array('odg'),
1376 | 'application/vnd.oasis.opendocument.graphics-template' => array('otg'),
1377 | 'application/vnd.oasis.opendocument.image' => array('odi'),
1378 | 'application/vnd.oasis.opendocument.image-template' => array('oti'),
1379 | 'application/vnd.oasis.opendocument.presentation' => array('odp'),
1380 | 'application/vnd.oasis.opendocument.presentation-template' => array('otp'),
1381 | 'application/vnd.oasis.opendocument.spreadsheet' => array('ods'),
1382 | 'application/vnd.oasis.opendocument.spreadsheet-template' => array('ots'),
1383 | 'application/vnd.oasis.opendocument.text' => array('odt'),
1384 | 'application/vnd.oasis.opendocument.text-master' => array('odm'),
1385 | 'application/vnd.oasis.opendocument.text-template' => array('ott'),
1386 | 'application/vnd.oasis.opendocument.text-web' => array('oth'),
1387 | 'application/vnd.olpc-sugar' => array('xo'),
1388 | 'application/vnd.oma.dd2+xml' => array('dd2'),
1389 | 'application/vnd.openofficeorg.extension' => array('oxt'),
1390 | 'application/vnd.openxmlformats-officedocument.presentationml.presentation' => array('pptx'),
1391 | 'application/vnd.openxmlformats-officedocument.presentationml.slide' => array('sldx'),
1392 | 'application/vnd.openxmlformats-officedocument.presentationml.slideshow' => array('ppsx'),
1393 | 'application/vnd.openxmlformats-officedocument.presentationml.template' => array('potx'),
1394 | 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' => array('xlsx'),
1395 | 'application/vnd.openxmlformats-officedocument.spreadsheetml.template' => array('xltx'),
1396 | 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' => array('docx'),
1397 | 'application/vnd.openxmlformats-officedocument.wordprocessingml.template' => array('dotx'),
1398 | 'application/vnd.osgeo.mapguide.package' => array('mgp'),
1399 | 'application/vnd.osgi.dp' => array('dp'),
1400 | 'application/vnd.osgi.subsystem' => array('esa'),
1401 | 'application/vnd.palm' => array('pdb', 'pqa', 'oprc'),
1402 | 'application/vnd.pawaafile' => array('paw'),
1403 | 'application/vnd.pg.format' => array('str'),
1404 | 'application/vnd.pg.osasli' => array('ei6'),
1405 | 'application/vnd.picsel' => array('efif'),
1406 | 'application/vnd.pmi.widget' => array('wg'),
1407 | 'application/vnd.pocketlearn' => array('plf'),
1408 | 'application/vnd.powerbuilder6' => array('pbd'),
1409 | 'application/vnd.previewsystems.box' => array('box'),
1410 | 'application/vnd.proteus.magazine' => array('mgz'),
1411 | 'application/vnd.publishare-delta-tree' => array('qps'),
1412 | 'application/vnd.pvi.ptid1' => array('ptid'),
1413 | 'application/vnd.quark.quarkxpress' => array('qxd', 'qxt', 'qwd', 'qwt', 'qxl', 'qxb'),
1414 | 'application/vnd.realvnc.bed' => array('bed'),
1415 | 'application/vnd.recordare.musicxml' => array('mxl'),
1416 | 'application/vnd.recordare.musicxml+xml' => array('musicxml'),
1417 | 'application/vnd.rig.cryptonote' => array('cryptonote'),
1418 | 'application/vnd.rim.cod' => array('cod'),
1419 | 'application/vnd.rn-realmedia' => array('rm'),
1420 | 'application/vnd.rn-realmedia-vbr' => array('rmvb'),
1421 | 'application/vnd.route66.link66+xml' => array('link66'),
1422 | 'application/vnd.sailingtracker.track' => array('st'),
1423 | 'application/vnd.seemail' => array('see'),
1424 | 'application/vnd.sema' => array('sema'),
1425 | 'application/vnd.semd' => array('semd'),
1426 | 'application/vnd.semf' => array('semf'),
1427 | 'application/vnd.shana.informed.formdata' => array('ifm'),
1428 | 'application/vnd.shana.informed.formtemplate' => array('itp'),
1429 | 'application/vnd.shana.informed.interchange' => array('iif'),
1430 | 'application/vnd.shana.informed.package' => array('ipk'),
1431 | 'application/vnd.simtech-mindmapper' => array('twd', 'twds'),
1432 | 'application/vnd.smaf' => array('mmf'),
1433 | 'application/vnd.smart.teacher' => array('teacher'),
1434 | 'application/vnd.solent.sdkm+xml' => array('sdkm', 'sdkd'),
1435 | 'application/vnd.spotfire.dxp' => array('dxp'),
1436 | 'application/vnd.spotfire.sfs' => array('sfs'),
1437 | 'application/vnd.stardivision.calc' => array('sdc'),
1438 | 'application/vnd.stardivision.draw' => array('sda'),
1439 | 'application/vnd.stardivision.impress' => array('sdd'),
1440 | 'application/vnd.stardivision.math' => array('smf'),
1441 | 'application/vnd.stardivision.writer' => array('sdw', 'vor'),
1442 | 'application/vnd.stardivision.writer-global' => array('sgl'),
1443 | 'application/vnd.stepmania.package' => array('smzip'),
1444 | 'application/vnd.stepmania.stepchart' => array('sm'),
1445 | 'application/vnd.sun.xml.calc' => array('sxc'),
1446 | 'application/vnd.sun.xml.calc.template' => array('stc'),
1447 | 'application/vnd.sun.xml.draw' => array('sxd'),
1448 | 'application/vnd.sun.xml.draw.template' => array('std'),
1449 | 'application/vnd.sun.xml.impress' => array('sxi'),
1450 | 'application/vnd.sun.xml.impress.template' => array('sti'),
1451 | 'application/vnd.sun.xml.math' => array('sxm'),
1452 | 'application/vnd.sun.xml.writer' => array('sxw'),
1453 | 'application/vnd.sun.xml.writer.global' => array('sxg'),
1454 | 'application/vnd.sun.xml.writer.template' => array('stw'),
1455 | 'application/vnd.sus-calendar' => array('sus', 'susp'),
1456 | 'application/vnd.svd' => array('svd'),
1457 | 'application/vnd.symbian.install' => array('sis', 'sisx'),
1458 | 'application/vnd.syncml+xml' => array('xsm'),
1459 | 'application/vnd.syncml.dm+wbxml' => array('bdm'),
1460 | 'application/vnd.syncml.dm+xml' => array('xdm'),
1461 | 'application/vnd.tao.intent-module-archive' => array('tao'),
1462 | 'application/vnd.tcpdump.pcap' => array('pcap', 'cap', 'dmp'),
1463 | 'application/vnd.tmobile-livetv' => array('tmo'),
1464 | 'application/vnd.trid.tpt' => array('tpt'),
1465 | 'application/vnd.triscape.mxs' => array('mxs'),
1466 | 'application/vnd.trueapp' => array('tra'),
1467 | 'application/vnd.ufdl' => array('ufd', 'ufdl'),
1468 | 'application/vnd.uiq.theme' => array('utz'),
1469 | 'application/vnd.umajin' => array('umj'),
1470 | 'application/vnd.unity' => array('unityweb'),
1471 | 'application/vnd.uoml+xml' => array('uoml'),
1472 | 'application/vnd.vcx' => array('vcx'),
1473 | 'application/vnd.visio' => array('vsd', 'vst', 'vss', 'vsw'),
1474 | 'application/vnd.visionary' => array('vis'),
1475 | 'application/vnd.vsf' => array('vsf'),
1476 | 'application/vnd.wap.wbxml' => array('wbxml'),
1477 | 'application/vnd.wap.wmlc' => array('wmlc'),
1478 | 'application/vnd.wap.wmlscriptc' => array('wmlsc'),
1479 | 'application/vnd.webturbo' => array('wtb'),
1480 | 'application/vnd.wolfram.player' => array('nbp'),
1481 | 'application/vnd.wordperfect' => array('wpd'),
1482 | 'application/vnd.wqd' => array('wqd'),
1483 | 'application/vnd.wt.stf' => array('stf'),
1484 | 'application/vnd.xara' => array('xar'),
1485 | 'application/vnd.xfdl' => array('xfdl'),
1486 | 'application/vnd.yamaha.hv-dic' => array('hvd'),
1487 | 'application/vnd.yamaha.hv-script' => array('hvs'),
1488 | 'application/vnd.yamaha.hv-voice' => array('hvp'),
1489 | 'application/vnd.yamaha.openscoreformat' => array('osf'),
1490 | 'application/vnd.yamaha.openscoreformat.osfpvg+xml' => array('osfpvg'),
1491 | 'application/vnd.yamaha.smaf-audio' => array('saf'),
1492 | 'application/vnd.yamaha.smaf-phrase' => array('spf'),
1493 | 'application/vnd.yellowriver-custom-menu' => array('cmp'),
1494 | 'application/vnd.zul' => array('zir', 'zirz'),
1495 | 'application/vnd.zzazz.deck+xml' => array('zaz'),
1496 | 'application/voicexml+xml' => array('vxml'),
1497 | 'application/widget' => array('wgt'),
1498 | 'application/winhlp' => array('hlp'),
1499 | 'application/wsdl+xml' => array('wsdl'),
1500 | 'application/wspolicy+xml' => array('wspolicy'),
1501 | 'application/x-7z-compressed' => array('7z'),
1502 | 'application/x-abiword' => array('abw'),
1503 | 'application/x-ace-compressed' => array('ace'),
1504 | 'application/x-apple-diskimage' => array('dmg'),
1505 | 'application/x-authorware-bin' => array('aab', 'x32', 'u32', 'vox'),
1506 | 'application/x-authorware-map' => array('aam'),
1507 | 'application/x-authorware-seg' => array('aas'),
1508 | 'application/x-bcpio' => array('bcpio'),
1509 | 'application/x-bittorrent' => array('torrent'),
1510 | 'application/x-blorb' => array('blb', 'blorb'),
1511 | 'application/x-bzip' => array('bz'),
1512 | 'application/x-bzip2' => array('bz2', 'boz'),
1513 | 'application/x-cbr' => array('cbr', 'cba', 'cbt', 'cbz', 'cb7'),
1514 | 'application/x-cdlink' => array('vcd'),
1515 | 'application/x-cfs-compressed' => array('cfs'),
1516 | 'application/x-chat' => array('chat'),
1517 | 'application/x-chess-pgn' => array('pgn'),
1518 | 'application/x-conference' => array('nsc'),
1519 | 'application/x-cpio' => array('cpio'),
1520 | 'application/x-csh' => array('csh'),
1521 | 'application/x-debian-package' => array('deb', 'udeb'),
1522 | 'application/x-dgc-compressed' => array('dgc'),
1523 | 'application/x-director' => array('dir', 'dcr', 'dxr', 'cst', 'cct', 'cxt', 'w3d', 'fgd', 'swa'),
1524 | 'application/x-doom' => array('wad'),
1525 | 'application/x-dtbncx+xml' => array('ncx'),
1526 | 'application/x-dtbook+xml' => array('dtb'),
1527 | 'application/x-dtbresource+xml' => array('res'),
1528 | 'application/x-dvi' => array('dvi'),
1529 | 'application/x-envoy' => array('evy'),
1530 | 'application/x-eva' => array('eva'),
1531 | 'application/x-font-bdf' => array('bdf'),
1532 | 'application/x-font-ghostscript' => array('gsf'),
1533 | 'application/x-font-linux-psf' => array('psf'),
1534 | 'application/x-font-otf' => array('otf'),
1535 | 'application/x-font-pcf' => array('pcf'),
1536 | 'application/x-font-snf' => array('snf'),
1537 | 'application/x-font-ttf' => array('ttf', 'ttc'),
1538 | 'application/x-font-type1' => array('pfa', 'pfb', 'pfm', 'afm'),
1539 | 'application/x-font-woff' => array('woff'),
1540 | 'application/x-freearc' => array('arc'),
1541 | 'application/x-futuresplash' => array('spl'),
1542 | 'application/x-gca-compressed' => array('gca'),
1543 | 'application/x-glulx' => array('ulx'),
1544 | 'application/x-gnumeric' => array('gnumeric'),
1545 | 'application/x-gramps-xml' => array('gramps'),
1546 | 'application/x-gtar' => array('gtar'),
1547 | 'application/x-hdf' => array('hdf'),
1548 | 'application/x-install-instructions' => array('install'),
1549 | 'application/x-iso9660-image' => array('iso'),
1550 | 'application/x-java-jnlp-file' => array('jnlp'),
1551 | 'application/x-latex' => array('latex'),
1552 | 'application/x-lzh-compressed' => array('lzh', 'lha'),
1553 | 'application/x-mie' => array('mie'),
1554 | 'application/x-mobipocket-ebook' => array('prc', 'mobi'),
1555 | 'application/x-ms-application' => array('application'),
1556 | 'application/x-ms-shortcut' => array('lnk'),
1557 | 'application/x-ms-wmd' => array('wmd'),
1558 | 'application/x-ms-wmz' => array('wmz'),
1559 | 'application/x-ms-xbap' => array('xbap'),
1560 | 'application/x-msaccess' => array('mdb'),
1561 | 'application/x-msbinder' => array('obd'),
1562 | 'application/x-mscardfile' => array('crd'),
1563 | 'application/x-msclip' => array('clp'),
1564 | 'application/x-msdownload' => array('exe', 'dll', 'com', 'bat', 'msi'),
1565 | 'application/x-msmediaview' => array('mvb', 'm13', 'm14'),
1566 | 'application/x-msmetafile' => array('wmf', 'wmz', 'emf', 'emz'),
1567 | 'application/x-msmoney' => array('mny'),
1568 | 'application/x-mspublisher' => array('pub'),
1569 | 'application/x-msschedule' => array('scd'),
1570 | 'application/x-msterminal' => array('trm'),
1571 | 'application/x-mswrite' => array('wri'),
1572 | 'application/x-netcdf' => array('nc', 'cdf'),
1573 | 'application/x-nzb' => array('nzb'),
1574 | 'application/x-pkcs12' => array('p12', 'pfx'),
1575 | 'application/x-pkcs7-certificates' => array('p7b', 'spc'),
1576 | 'application/x-pkcs7-certreqresp' => array('p7r'),
1577 | 'application/x-rar-compressed' => array('rar'),
1578 | 'application/x-research-info-systems' => array('ris'),
1579 | 'application/x-sh' => array('sh'),
1580 | 'application/x-shar' => array('shar'),
1581 | 'application/x-shockwave-flash' => array('swf'),
1582 | 'application/x-silverlight-app' => array('xap'),
1583 | 'application/x-sql' => array('sql'),
1584 | 'application/x-stuffit' => array('sit'),
1585 | 'application/x-stuffitx' => array('sitx'),
1586 | 'application/x-subrip' => array('srt'),
1587 | 'application/x-sv4cpio' => array('sv4cpio'),
1588 | 'application/x-sv4crc' => array('sv4crc'),
1589 | 'application/x-t3vm-image' => array('t3'),
1590 | 'application/x-tads' => array('gam'),
1591 | 'application/x-tar' => array('tar'),
1592 | 'application/x-tcl' => array('tcl'),
1593 | 'application/x-tex' => array('tex'),
1594 | 'application/x-tex-tfm' => array('tfm'),
1595 | 'application/x-texinfo' => array('texinfo', 'texi'),
1596 | 'application/x-tgif' => array('obj'),
1597 | 'application/x-ustar' => array('ustar'),
1598 | 'application/x-wais-source' => array('src'),
1599 | 'application/x-x509-ca-cert' => array('der', 'crt'),
1600 | 'application/x-xfig' => array('fig'),
1601 | 'application/x-xliff+xml' => array('xlf'),
1602 | 'application/x-xpinstall' => array('xpi'),
1603 | 'application/x-xz' => array('xz'),
1604 | 'application/x-zmachine' => array('z1', 'z2', 'z3', 'z4', 'z5', 'z6', 'z7', 'z8'),
1605 | 'application/xaml+xml' => array('xaml'),
1606 | 'application/xcap-diff+xml' => array('xdf'),
1607 | 'application/xenc+xml' => array('xenc'),
1608 | 'application/xhtml+xml' => array('xhtml', 'xht'),
1609 | 'application/xml' => array('xml', 'xsl'),
1610 | 'application/xml-dtd' => array('dtd'),
1611 | 'application/xop+xml' => array('xop'),
1612 | 'application/xproc+xml' => array('xpl'),
1613 | 'application/xslt+xml' => array('xslt'),
1614 | 'application/xspf+xml' => array('xspf'),
1615 | 'application/xv+xml' => array('mxml', 'xhvml', 'xvml', 'xvm'),
1616 | 'application/yang' => array('yang'),
1617 | 'application/yin+xml' => array('yin'),
1618 | 'application/zip' => array('zip', 'sketch'),
1619 | 'audio/adpcm' => array('adp'),
1620 | 'audio/basic' => array('au', 'snd'),
1621 | 'audio/midi' => array('mid', 'midi', 'kar', 'rmi'),
1622 | 'audio/mp4' => array('mp4a'),
1623 | 'audio/mpeg' => array('mpga', 'mp2', 'mp2a', 'mp3', 'm2a', 'm3a'),
1624 | 'audio/ogg' => array('oga', 'ogg', 'spx'),
1625 | 'audio/s3m' => array('s3m'),
1626 | 'audio/silk' => array('sil'),
1627 | 'audio/vnd.dece.audio' => array('uva', 'uvva'),
1628 | 'audio/vnd.digital-winds' => array('eol'),
1629 | 'audio/vnd.dra' => array('dra'),
1630 | 'audio/vnd.dts' => array('dts'),
1631 | 'audio/vnd.dts.hd' => array('dtshd'),
1632 | 'audio/vnd.lucent.voice' => array('lvp'),
1633 | 'audio/vnd.ms-playready.media.pya' => array('pya'),
1634 | 'audio/vnd.nuera.ecelp4800' => array('ecelp4800'),
1635 | 'audio/vnd.nuera.ecelp7470' => array('ecelp7470'),
1636 | 'audio/vnd.nuera.ecelp9600' => array('ecelp9600'),
1637 | 'audio/vnd.rip' => array('rip'),
1638 | 'audio/webm' => array('weba'),
1639 | 'audio/x-aac' => array('aac'),
1640 | 'audio/x-aiff' => array('aif', 'aiff', 'aifc'),
1641 | 'audio/x-caf' => array('caf'),
1642 | 'audio/x-flac' => array('flac'),
1643 | 'audio/x-matroska' => array('mka'),
1644 | 'audio/x-mpegurl' => array('m3u'),
1645 | 'audio/x-ms-wax' => array('wax'),
1646 | 'audio/x-ms-wma' => array('wma'),
1647 | 'audio/x-pn-realaudio' => array('ram', 'ra'),
1648 | 'audio/x-pn-realaudio-plugin' => array('rmp'),
1649 | 'audio/x-wav' => array('wav'),
1650 | 'audio/xm' => array('xm'),
1651 | 'chemical/x-cdx' => array('cdx'),
1652 | 'chemical/x-cif' => array('cif'),
1653 | 'chemical/x-cmdf' => array('cmdf'),
1654 | 'chemical/x-cml' => array('cml'),
1655 | 'chemical/x-csml' => array('csml'),
1656 | 'chemical/x-xyz' => array('xyz'),
1657 | 'image/bmp' => array('bmp'),
1658 | 'image/cgm' => array('cgm'),
1659 | 'image/g3fax' => array('g3'),
1660 | 'image/gif' => array('gif'),
1661 | 'image/heic' => array('heic'),
1662 | 'image/ief' => array('ief'),
1663 | 'image/jpeg' => array('jpeg', 'jpg', 'jpe'),
1664 | 'image/ktx' => array('ktx'),
1665 | 'image/png' => array('png'),
1666 | 'image/prs.btif' => array('btif'),
1667 | 'image/sgi' => array('sgi'),
1668 | 'image/svg+xml' => array('svg', 'svgz'),
1669 | 'image/tiff' => array('tiff', 'tif'),
1670 | 'image/vnd.adobe.photoshop' => array('psd'),
1671 | 'image/vnd.dece.graphic' => array('uvi', 'uvvi', 'uvg', 'uvvg'),
1672 | 'image/vnd.dvb.subtitle' => array('sub'),
1673 | 'image/vnd.djvu' => array('djvu', 'djv'),
1674 | 'image/vnd.dwg' => array('dwg'),
1675 | 'image/vnd.dxf' => array('dxf'),
1676 | 'image/vnd.fastbidsheet' => array('fbs'),
1677 | 'image/vnd.fpx' => array('fpx'),
1678 | 'image/vnd.fst' => array('fst'),
1679 | 'image/vnd.fujixerox.edmics-mmr' => array('mmr'),
1680 | 'image/vnd.fujixerox.edmics-rlc' => array('rlc'),
1681 | 'image/vnd.ms-modi' => array('mdi'),
1682 | 'image/vnd.ms-photo' => array('wdp'),
1683 | 'image/vnd.net-fpx' => array('npx'),
1684 | 'image/vnd.wap.wbmp' => array('wbmp'),
1685 | 'image/vnd.xiff' => array('xif'),
1686 | 'image/webp' => array('webp'),
1687 | 'image/x-3ds' => array('3ds'),
1688 | 'image/x-adobe-dng' => array('dng'),
1689 | 'image/x-canon-cr2' => array('cr2'),
1690 | 'image/x-canon-crw' => array('crw'),
1691 | 'image/x-cmu-raster' => array('ras'),
1692 | 'image/x-cmx' => array('cmx'),
1693 | 'image/x-epson-erf' => array('erf'),
1694 | 'image/x-freehand' => array('fh', 'fhc', 'fh4', 'fh5', 'fh7'),
1695 | 'image/x-fuji-raf' => array('raf'),
1696 | 'image/x-icon' => array('ico'),
1697 | 'image/x-kodak-dcr' => array('dcr'),
1698 | 'image/x-kodak-k25' => array('k25'),
1699 | 'image/x-kodak-kdc' => array('kdc'),
1700 | 'image/x-minolta-mrw' => array('mrw'),
1701 | 'image/x-mrsid-image' => array('sid'),
1702 | 'image/x-nikon-nef' => array('nef'),
1703 | 'image/x-olympus-orf' => array('orf'),
1704 | 'image/x-panasonic-raw' => array('raw'),
1705 | 'image/x-pcx' => array('pcx'),
1706 | 'image/x-pentax-pef' => array('pef'),
1707 | 'image/x-pict' => array('pic', 'pct'),
1708 | 'image/x-portable-anymap' => array('pnm'),
1709 | 'image/x-portable-bitmap' => array('pbm'),
1710 | 'image/x-portable-graymap' => array('pgm'),
1711 | 'image/x-portable-pixmap' => array('ppm'),
1712 | 'image/x-rgb' => array('rgb'),
1713 | 'image/x-sigma-x3f' => array('x3f'),
1714 | 'image/x-sony-arw' => array('arw'),
1715 | 'image/x-sony-sr2' => array('sr2'),
1716 | 'image/x-sony-srf' => array('srf'),
1717 | 'image/x-tga' => array('tga'),
1718 | 'image/x-xbitmap' => array('xbm'),
1719 | 'image/x-xpixmap' => array('xpm'),
1720 | 'image/x-xwindowdump' => array('xwd'),
1721 | 'message/rfc822' => array('eml', 'mime'),
1722 | 'model/iges' => array('igs', 'iges'),
1723 | 'model/mesh' => array('msh', 'mesh', 'silo'),
1724 | 'model/vnd.collada+xml' => array('dae'),
1725 | 'model/vnd.dwf' => array('dwf'),
1726 | 'model/vnd.gdl' => array('gdl'),
1727 | 'model/vnd.gtw' => array('gtw'),
1728 | 'model/vnd.mts' => array('mts'),
1729 | 'model/vnd.vtu' => array('vtu'),
1730 | 'model/vrml' => array('wrl', 'vrml'),
1731 | 'model/x3d+binary' => array('x3db', 'x3dbz'),
1732 | 'model/x3d+vrml' => array('x3dv', 'x3dvz'),
1733 | 'model/x3d+xml' => array('x3d', 'x3dz'),
1734 | 'text/cache-manifest' => array('appcache'),
1735 | 'text/calendar' => array('ics', 'ifb'),
1736 | 'text/css' => array('css'),
1737 | 'text/csv' => array('csv'),
1738 | 'text/html' => array('html', 'htm'),
1739 | 'text/n3' => array('n3'),
1740 | 'text/plain' => array('txt', 'text', 'conf', 'def', 'list', 'log', 'in'),
1741 | 'text/prs.lines.tag' => array('dsc'),
1742 | 'text/richtext' => array('rtx'),
1743 | 'text/sgml' => array('sgml', 'sgm'),
1744 | 'text/tab-separated-values' => array('tsv'),
1745 | 'text/troff' => array('t', 'tr', 'roff', 'man', 'me', 'ms'),
1746 | 'text/turtle' => array('ttl'),
1747 | 'text/uri-list' => array('uri', 'uris', 'urls'),
1748 | 'text/vcard' => array('vcard'),
1749 | 'text/vnd.curl' => array('curl'),
1750 | 'text/vnd.curl.dcurl' => array('dcurl'),
1751 | 'text/vnd.curl.scurl' => array('scurl'),
1752 | 'text/vnd.curl.mcurl' => array('mcurl'),
1753 | 'text/vnd.dvb.subtitle' => array('sub'),
1754 | 'text/vnd.fly' => array('fly'),
1755 | 'text/vnd.fmi.flexstor' => array('flx'),
1756 | 'text/vnd.graphviz' => array('gv'),
1757 | 'text/vnd.in3d.3dml' => array('3dml'),
1758 | 'text/vnd.in3d.spot' => array('spot'),
1759 | 'text/vnd.sun.j2me.app-descriptor' => array('jad'),
1760 | 'text/vnd.wap.wml' => array('wml'),
1761 | 'text/vnd.wap.wmlscript' => array('wmls'),
1762 | 'text/x-asm' => array('s', 'asm'),
1763 | 'text/x-c' => array('c', 'cc', 'cxx', 'cpp', 'h', 'hh', 'dic'),
1764 | 'text/x-fortran' => array('f', 'for', 'f77', 'f90'),
1765 | 'text/x-java-source' => array('java'),
1766 | 'text/x-opml' => array('opml'),
1767 | 'text/x-pascal' => array('p', 'pas'),
1768 | 'text/x-php' => array('php', 'phtml', 'php3', 'php4', 'php5', 'php7', 'phps'),
1769 | 'text/x-nfo' => array('nfo'),
1770 | 'text/x-setext' => array('etx'),
1771 | 'text/x-sfv' => array('sfv'),
1772 | 'text/x-uuencode' => array('uu'),
1773 | 'text/x-vcalendar' => array('vcs'),
1774 | 'text/x-vcard' => array('vcf'),
1775 | 'video/3gpp' => array('3gp'),
1776 | 'video/3gpp2' => array('3g2'),
1777 | 'video/h261' => array('h261'),
1778 | 'video/h263' => array('h263'),
1779 | 'video/h264' => array('h264'),
1780 | 'video/jpeg' => array('jpgv'),
1781 | 'video/jpm' => array('jpm', 'jpgm'),
1782 | 'video/mj2' => array('mj2', 'mjp2'),
1783 | 'video/mp4' => array('mp4', 'mp4v', 'mpg4'),
1784 | 'video/mpeg' => array('mpeg', 'mpg', 'mpe', 'm1v', 'm2v'),
1785 | 'video/ogg' => array('ogv'),
1786 | 'video/quicktime' => array('qt', 'mov'),
1787 | 'video/vnd.dece.hd' => array('uvh', 'uvvh'),
1788 | 'video/vnd.dece.mobile' => array('uvm', 'uvvm'),
1789 | 'video/vnd.dece.pd' => array('uvp', 'uvvp'),
1790 | 'video/vnd.dece.sd' => array('uvs', 'uvvs'),
1791 | 'video/vnd.dece.video' => array('uvv', 'uvvv'),
1792 | 'video/vnd.dvb.file' => array('dvb'),
1793 | 'video/vnd.fvt' => array('fvt'),
1794 | 'video/vnd.mpegurl' => array('mxu', 'm4u'),
1795 | 'video/vnd.ms-playready.media.pyv' => array('pyv'),
1796 | 'video/vnd.uvvu.mp4' => array('uvu', 'uvvu'),
1797 | 'video/vnd.vivo' => array('viv'),
1798 | 'video/webm' => array('webm'),
1799 | 'video/x-f4v' => array('f4v'),
1800 | 'video/x-fli' => array('fli'),
1801 | 'video/x-flv' => array('flv'),
1802 | 'video/x-m4v' => array('m4v'),
1803 | 'video/x-matroska' => array('mkv', 'mk3d', 'mks'),
1804 | 'video/x-mng' => array('mng'),
1805 | 'video/x-ms-asf' => array('asf', 'asx'),
1806 | 'video/x-ms-vob' => array('vob'),
1807 | 'video/x-ms-wm' => array('wm'),
1808 | 'video/x-ms-wmv' => array('wmv'),
1809 | 'video/x-ms-wmx' => array('wmx'),
1810 | 'video/x-ms-wvx' => array('wvx'),
1811 | 'video/x-msvideo' => array('avi'),
1812 | 'video/x-sgi-movie' => array('movie'),
1813 | 'video/x-smv' => array('smv'),
1814 | 'x-conference/x-cooltalk' => array('ice'),
1815 | );
1816 |
1817 | /**
1818 | * {@inheritdoc}
1819 | */
1820 | public function dumpExtensionToType()
1821 | {
1822 | return $this->extensionToType;
1823 | }
1824 |
1825 | /**
1826 | * {@inheritdoc}
1827 | */
1828 | public function dumpTypeToExtensions()
1829 | {
1830 | return $this->typeToExtensions;
1831 | }
1832 |
1833 | /**
1834 | * {@inheritdoc}
1835 | */
1836 | public function findExtensions($type)
1837 | {
1838 | $type = strtolower($type);
1839 | if (isset($this->typeToExtensions[$type])) {
1840 | return $this->typeToExtensions[$type];
1841 | }
1842 |
1843 | return array();
1844 | }
1845 |
1846 | /**
1847 | * {@inheritdoc}
1848 | */
1849 | public function findType($extension)
1850 | {
1851 | $extension = strtolower($extension);
1852 | if (isset($this->extensionToType[$extension])) {
1853 | return $this->extensionToType[$extension];
1854 | }
1855 |
1856 | return null;
1857 | }
1858 | }
1859 |
--------------------------------------------------------------------------------