From efcaf5a190f959f402b78e63a0df5e189e6d6c1c Mon Sep 17 00:00:00 2001 From: "matthias.lotz" Date: Mon, 6 Oct 2025 19:30:21 +0200 Subject: [PATCH] inital --- .gitignore | 56 + README.md | 3 + build.local.sh | 2 + build.sh | 1 + cups/README.md | 71 + cups/cups/cupsd.conf | 206 ++ cups/cups/printers.conf | 40 + cups/ppd/HL-L2370DN.ppd | 198 ++ cups/ppd/HL-L2370DN.ppd.O | 198 ++ docker-compose.local.yml | 39 + docker-compose.yml | 42 + dockerfile | 39 + dockerfile.local | 39 + logs.xml | 3 + manager.xml | 1 + start.local.sh | 1 + start.sh | 1 + stop.sh | 1 + tomcat-users.xml | 62 + web.xml | 4694 +++++++++++++++++++++++++++++++++++++ 20 files changed, 5697 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100755 build.local.sh create mode 100755 build.sh create mode 100644 cups/README.md create mode 100644 cups/cups/cupsd.conf create mode 100644 cups/cups/printers.conf create mode 100644 cups/ppd/HL-L2370DN.ppd create mode 100644 cups/ppd/HL-L2370DN.ppd.O create mode 100644 docker-compose.local.yml create mode 100644 docker-compose.yml create mode 100644 dockerfile create mode 100644 dockerfile.local create mode 100644 logs.xml create mode 100644 manager.xml create mode 100755 start.local.sh create mode 100755 start.sh create mode 100755 stop.sh create mode 100644 tomcat-users.xml create mode 100644 web.xml diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2105ddb --- /dev/null +++ b/.gitignore @@ -0,0 +1,56 @@ +/install/HoHiHa +venv +odoo_env +__pycache__ +secrets.yml + +# Output Verzeichnis +output/ +/output + +# Java/Maven +target/ +*.jar +*.war +*.class + +# Python +*.pyc +*.pyo +*.pyd +__pycache__/ +*.so +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg + +# IDE +.vscode/settings.json +.idea/ +*.swp +*.swo +*~ + +# Docker +docker/HoHiHa.war + +# Logs +*.log +logs/ + +# OS +.DS_Store +Thumbs.db diff --git a/README.md b/README.md new file mode 100644 index 0000000..3a74641 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# Tomee Java Webanwendung mit Docker für hobbysign + +Dies ist ein Dockerfile für eine benutzerdefinierte Apache TomEE-Installation, die speziell für die Ausführung der HoHiHa-Webanwendung konfiguriert ist. Es basiert auf dem offiziellen TomEE-Image und fügt zusätzliche Konfigurationen und Ressourcen hinzu, um die Anwendung optimal zu unterstützen. \ No newline at end of file diff --git a/build.local.sh b/build.local.sh new file mode 100755 index 0000000..c146181 --- /dev/null +++ b/build.local.sh @@ -0,0 +1,2 @@ +docker build --no-cache -t gitea.lan.hobbyhimmel.de/hobbyhimmel/custom-tomee . -f dockerfile.local + diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..efac500 --- /dev/null +++ b/build.sh @@ -0,0 +1 @@ +docker build --no-cache -t gitea.lan.hobbyhimmel.de/hobbyhimmel/custom-tomee . \ No newline at end of file diff --git a/cups/README.md b/cups/README.md new file mode 100644 index 0000000..ec78bb1 --- /dev/null +++ b/cups/README.md @@ -0,0 +1,71 @@ + +# CUPS & Docker: Troubleshooting und Best Practices + +## Netzwerk & Benutzer +- **Firewall öffnen:** + ```bash + sudo ufw allow from 172.30.30.0/24 to any port 631 proto tcp + ``` +- **Benutzer zu lpadmin hinzufügen:** + ```bash + sudo usermod -aG lpadmin + ``` +- **CUPS-Client installieren:** + ```bash + sudo apt install cups-bsd + ``` + +## WSL2: CUPS starten +```bash +sudo service cups start +``` + +## CUPS-Socket Problem +Falls `/run/cups/cups.sock` ein Verzeichnis ist: +```bash +sudo rm -r /run/cups/cups.sock +sudo service cups restart +``` + +## CUPS-Dienst prüfen +- **Läuft cupsd?** + ```bash + ps aux | grep cupsd + ``` +- **Fehler im Log:** + ```bash + tail -n 50 /var/log/cups/error_log + ``` +- **CUPS explizit neu starten und Socket prüfen:** + ```bash + sudo service cups stop + sudo service cups start + ls -l /var/run/cups/cups.sock + ls -ld /var/run/cups + ``` + +--- +## Erkenntnisse & Lösungen aus der Praxis + +**Problem:** +Docker-Container verlieren nach einem Neustart des Host-CUPS-Dienstes die Verbindung zum Drucker (Fehler: "Bad file descriptor"). + +**Ursache:** +Der CUPS-Dienst wird z.B. durch Logrotate automatisch neu gestartet (siehe `/etc/logrotate.d/cups-daemon`). Dabei wird der Socket neu erzeugt und bestehende Verbindungen ungültig. + +**Lösung:** +- Entferne oder kommentiere in `/etc/logrotate.d/cups-daemon` die Zeile im `postrotate`-Block: + ```bash + # invoke-rc.d --quiet cups restart > /dev/null + ``` + Dadurch wird CUPS nicht mehr automatisch nachts neu gestartet. +- Falls ein Neustart nötig ist, Container nach CUPS-Neustart ebenfalls neu starten (manuell oder automatisiert). +- In Anwendungen Fehler wie "Bad file descriptor" abfangen und ggf. den Druckvorgang erneut versuchen. +- Healthcheck im Container einbauen, um Verbindungsprobleme frühzeitig zu erkennen. + +**Tipp:** +Portainer und Watchtower können helfen, Container-Status zu überwachen und bei Problemen automatisiert neu zu starten. + +--- +**Weitere Infos:** +- [wiki.hobbyhimmel.de/it/hobbysign/drucker_installation](https://wiki.hobbyhimmel.de/it/hobbysign/drucker_installation?s[]=cups) \ No newline at end of file diff --git a/cups/cups/cupsd.conf b/cups/cups/cupsd.conf new file mode 100644 index 0000000..8112820 --- /dev/null +++ b/cups/cups/cupsd.conf @@ -0,0 +1,206 @@ +# +# Configuration file for the CUPS scheduler. See "man cupsd.conf" for a +# complete description of this file. +# + +# Log general information in error_log - change "warn" to "debug" +# for troubleshooting... +LogLevel warn +PageLogFormat + +# Specifies the maximum size of the log files before they are rotated. The value "0" disables log rotation. +MaxLogSize 0 + +# Default error policy for printers +ErrorPolicy retry-job +# Allow remote access +#Port 631 +#Listen 0.0.0.0:631 +Listen localhost:631 +Listen /run/cups/cups.sock +# Webinterface im lokalen Netz erreichbar machen (Server-IP anpassen, z.B. 172.30.30.1) +Listen hobbybackend1.fritz.box:631 +ServerName hobbybackend1.fritz.box + +# Show shared printers on the local network. +Browsing No +BrowseLocalProtocols none + +# Default authentication type, when authentication is required... +DefaultAuthType Basic + +# Web interface setting... +WebInterface Yes + +# Timeout after cupsd exits if idle (applied only if cupsd runs on-demand - with -l) +IdleExitTimeout 60 + +# Restrict access to the server... + + Order allow,deny + + + +# Webinterface-Zugriff für localhost und das lokale Netz erlauben + + Order allow,deny + Allow from 127.0.0.1 + Allow from 172.30.30. + + + + + AuthType Default + Require user @SYSTEM + Order allow,deny + Allow from 127.0.0.1 + Allow from 172.30.30. + + +# Restrict access to log files... + + AuthType Default + Require user @SYSTEM + Order allow,deny + + +# Set the default printer/job policies... + + # Job/subscription privacy... + JobPrivateAccess default + JobPrivateValues default + SubscriptionPrivateAccess default + SubscriptionPrivateValues default + + # Job-related operations must be done by the owner or an administrator... + + Order deny,allow + + + + Require user @OWNER @SYSTEM + Order deny,allow + + + + AuthType Default + Require user @OWNER @SYSTEM + Order deny,allow + + + # All administration operations require an administrator to authenticate... + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + # All printer operations require a printer operator to authenticate... + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + # Only the owner or an administrator can cancel or authenticate a job... + + Require user @OWNER @SYSTEM + Order deny,allow + + + + Order deny,allow + + + +# Set the authenticated printer/job policies... + + # Job/subscription privacy... + JobPrivateAccess default + JobPrivateValues default + SubscriptionPrivateAccess default + SubscriptionPrivateValues default + + # Job-related operations must be done by the owner or an administrator... + + AuthType Default + Order deny,allow + + + + AuthType Default + Require user @OWNER @SYSTEM + Order deny,allow + + + # All administration operations require an administrator to authenticate... + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + # All printer operations require a printer operator to authenticate... + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + # Only the owner or an administrator can cancel or authenticate a job... + + AuthType Default + Require user @OWNER @SYSTEM + Order deny,allow + + + + Order deny,allow + + + +# Set the kerberized printer/job policies... + + # Job/subscription privacy... + JobPrivateAccess default + JobPrivateValues default + SubscriptionPrivateAccess default + SubscriptionPrivateValues default + + # Job-related operations must be done by the owner or an administrator... + + AuthType Negotiate + Order deny,allow + + + + AuthType Negotiate + Require user @OWNER @SYSTEM + Order deny,allow + + + # All administration operations require an administrator to authenticate... + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + # All printer operations require a printer operator to authenticate... + + AuthType Default + Require user @SYSTEM + Order deny,allow + + + # Only the owner or an administrator can cancel or authenticate a job... + + AuthType Negotiate + Require user @OWNER @SYSTEM + Order deny,allow + + + + Order deny,allow + + \ No newline at end of file diff --git a/cups/cups/printers.conf b/cups/cups/printers.conf new file mode 100644 index 0000000..e964feb --- /dev/null +++ b/cups/cups/printers.conf @@ -0,0 +1,40 @@ +# Printer configuration file for CUPS v2.4.1 +# Written by cupsd +# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING +NextPrinterId 12 + +PrinterId 11 +UUID urn:uuid:1a9146e1-aec9-3ad3-5e9a-4f828874a024 +Info Brother_HL_L2370DN_series +Location +MakeModel Brother HL-L2370DN series, driverless, cups-filters 1.28.15 +DeviceURI implicitclass://Brother_HL_L2370DN_series/ +State Idle +StateTime 1757838264 +ConfigTime 1757838264 +Type 36884 +Accepting Yes +Shared No +JobSheets none none +QuotaPeriod 0 +PageLimit 0 +KLimit 0 +OpPolicy default +ErrorPolicy retry-job +Option copies 1 +Option cups-browsed true +Option finishings 0 +Option job-cancel-after 10800 +Option job-hold-until no-hold +Option job-priority 50 +Option media iso_a4_210x297mm +Option notify-events job-completed +Option notify-lease-duration 86400 +Option number-up 1 +Option orientation-requested 0 +Option output-bin face-down +Option print-color-mode monochrome +Option print-quality 0 +Option printer-resolution 1200x1200dpi +Option sides one-sided + \ No newline at end of file diff --git a/cups/ppd/HL-L2370DN.ppd b/cups/ppd/HL-L2370DN.ppd new file mode 100644 index 0000000..f61a1b2 --- /dev/null +++ b/cups/ppd/HL-L2370DN.ppd @@ -0,0 +1,198 @@ +*PPD-Adobe: "4.3" +*cupsMandatory: attributes-charset attributes-natural-language printer-uri +*FormatVersion: "4.3" +*FileVersion: "2.4" +*LanguageVersion: English +*LanguageEncoding: ISOLatin1 +*PSVersion: "(3010.000) 0" +*LanguageLevel: "3" +*FileSystem: False +*PCFileName: "ippeve.ppd" +*Manufacturer: "Brother" +*ModelName: "HL-L2370DN series" +*Product: "(HL-L2370DN series)" +*NickName: "HL-L2370DN series - IPP Everywhere" +*ShortNickName: "HL-L2370DN series - IPP Everywhere" +*ColorDevice: False +*cupsVersion: 2.4 +*cupsSNMPSupplies: False +*cupsLanguages: "en_US" +*APSupplies: "http://BRN94DDF8032B71.local./net/net/airprint.html" +*cupsManualCopies: True +*cupsFilter2: "image/urf image/urf 100 -" +*OpenUI *PageSize: PickOne +*OrderDependency: 10 AnySetup *PageSize +*DefaultPageSize: A4 +*PageSize 215x345mm: "<>setpagedevice" +*PageSize 3x5: "<>setpagedevice" +*PageSize A4: "<>setpagedevice" +*PageSize A5: "<>setpagedevice" +*PageSize A6: "<>setpagedevice" +*PageSize Env10: "<>setpagedevice" +*PageSize EnvC5: "<>setpagedevice" +*PageSize EnvDL: "<>setpagedevice" +*PageSize EnvMonarch: "<>setpagedevice" +*PageSize Executive: "<>setpagedevice" +*PageSize FanFoldGermanLegal: "<>setpagedevice" +*PageSize ISOB5: "<>setpagedevice" +*PageSize Legal: "<>setpagedevice" +*PageSize Letter: "<>setpagedevice" +*PageSize Oficio: "<>setpagedevice" +*CloseUI: *PageSize +*OpenUI *PageRegion: PickOne +*OrderDependency: 10 AnySetup *PageRegion +*DefaultPageRegion: A4 +*PageRegion 215x345mm: "<>setpagedevice" +*PageRegion 3x5: "<>setpagedevice" +*PageRegion A4: "<>setpagedevice" +*PageRegion A5: "<>setpagedevice" +*PageRegion A6: "<>setpagedevice" +*PageRegion Env10: "<>setpagedevice" +*PageRegion EnvC5: "<>setpagedevice" +*PageRegion EnvDL: "<>setpagedevice" +*PageRegion EnvMonarch: "<>setpagedevice" +*PageRegion Executive: "<>setpagedevice" +*PageRegion FanFoldGermanLegal: "<>setpagedevice" +*PageRegion ISOB5: "<>setpagedevice" +*PageRegion Legal: "<>setpagedevice" +*PageRegion Letter: "<>setpagedevice" +*PageRegion Oficio: "<>setpagedevice" +*CloseUI: *PageRegion +*DefaultImageableArea: A4 +*DefaultPaperDimension: A4 +*ImageableArea 215x345mm: "12.245669291339 12.245669291339 597.203149606299 965.707086614173" +*PaperDimension 215x345mm: "609.448818897638 977.952755905512" +*ImageableArea 3x5: "12.245669291339 12.245669291339 203.754330708661 347.754330708661" +*PaperDimension 3x5: "216 360" +*ImageableArea A4: "12.245669291339 12.245669291339 583.029921259842 829.644094488189" +*PaperDimension A4: "595.275590551181 841.889763779528" +*ImageableArea A5: "12.245669291339 12.245669291339 407.28188976378 583.029921259842" +*PaperDimension A5: "419.527559055118 595.275590551181" +*ImageableArea A6: "12.245669291339 12.245669291339 285.392125984252 407.28188976378" +*PaperDimension A6: "297.637795275591 419.527559055118" +*ImageableArea Env10: "12.245669291339 12.245669291339 284.740157480315 671.754330708661" +*PaperDimension Env10: "296.985826771654 684" +*ImageableArea EnvC5: "12.245669291339 12.245669291339 446.966929133858 636.888188976378" +*PaperDimension EnvC5: "459.212598425197 649.133858267717" +*ImageableArea EnvDL: "12.245669291339 12.245669291339 299.565354330709 611.376377952756" +*PaperDimension EnvDL: "311.811023622047 623.622047244094" +*ImageableArea EnvMonarch: "12.245669291339 12.245669291339 266.740157480315 527.754330708661" +*PaperDimension EnvMonarch: "278.985826771654 540" +*ImageableArea Executive: "12.245669291339 12.245669291339 509.754330708661 743.754330708661" +*PaperDimension Executive: "522 756" +*ImageableArea FanFoldGermanLegal: "12.245669291339 12.245669291339 599.754330708661 923.754330708661" +*PaperDimension FanFoldGermanLegal: "612 936" +*ImageableArea ISOB5: "12.245669291339 12.245669291339 486.651968503937 696.415748031496" +*PaperDimension ISOB5: "498.897637795276 708.661417322835" +*ImageableArea Legal: "12.245669291339 12.245669291339 599.754330708661 995.754330708661" +*PaperDimension Legal: "612 1008" +*ImageableArea Letter: "12.245669291339 12.245669291339 599.754330708661 779.754330708661" +*PaperDimension Letter: "612 792" +*ImageableArea Oficio: "12.245669291339 12.245669291339 599.754330708661 952.554330708661" +*PaperDimension Oficio: "612 964.8" +*HWMargins: "12.245669291339 12.245669291339 12.245669291339 12.245669291339" +*ParamCustomPageSize Width: 1 points 216 612 +*ParamCustomPageSize Height: 2 points 360 1008 +*ParamCustomPageSize WidthOffset: 3 points 0 0 +*ParamCustomPageSize HeightOffset: 4 points 0 0 +*ParamCustomPageSize Orientation: 5 int 0 3 +*CustomPageSize True: "pop pop pop <>setpagedevice" +*OpenUI *InputSlot: PickOne +*OrderDependency: 10 AnySetup *InputSlot +*DefaultInputSlot: Auto +*InputSlot Auto: "<>setpagedevice" +*en_US.InputSlot Auto/Automatic: "" +*InputSlot Manual: "<>setpagedevice" +*en_US.InputSlot Manual/Manual: "" +*InputSlot Tray1: "<>setpagedevice" +*en_US.InputSlot Tray1/Tray 1: "" +*CloseUI: *InputSlot +*OpenUI *MediaType: PickOne +*OrderDependency: 10 AnySetup *MediaType +*DefaultMediaType: Stationery +*MediaType Stationery: "<>setpagedevice" +*en_US.MediaType Stationery/Stationery: "" +*MediaType StationeryLightweight: "<>setpagedevice" +*en_US.MediaType StationeryLightweight/Lightweight Paper: "" +*MediaType StationeryHeavyweight: "<>setpagedevice" +*en_US.MediaType StationeryHeavyweight/Heavyweight Paper: "" +*MediaType StationeryCover: "<>setpagedevice" +*en_US.MediaType StationeryCover/stationery-cover: "" +*MediaType Envelope: "<>setpagedevice" +*en_US.MediaType Envelope/Envelope: "" +*MediaType EnvelopeHeavyweight: "<>setpagedevice" +*en_US.MediaType EnvelopeHeavyweight/Heavyweight Envelope: "" +*MediaType EnvelopeLightweight: "<>setpagedevice" +*en_US.MediaType EnvelopeLightweight/Lightweight Envelope: "" +*MediaType StationeryRecycled: "<>setpagedevice" +*en_US.MediaType StationeryRecycled/stationery-recycled: "" +*MediaType Labels: "<>setpagedevice" +*en_US.MediaType Labels/Labels: "" +*MediaType StationeryBond: "<>setpagedevice" +*en_US.MediaType StationeryBond/stationery-bond: "" +*MediaType Com.brother.thicker: "<>setpagedevice" +*en_US.MediaType Com.brother.thicker/com.brother.thicker: "" +*MediaType Com.brother.recycled: "<>setpagedevice" +*en_US.MediaType Com.brother.recycled/com.brother.recycled: "" +*CloseUI: *MediaType +*DefaultResolution: 300dpi +*OpenUI *cupsPrintQuality: PickOne +*OrderDependency: 10 AnySetup *cupsPrintQuality +*en_US.Translation cupsPrintQuality/Print Quality: "" +*DefaultcupsPrintQuality: Normal +*cupsPrintQuality Draft: "<>setpagedevice" +*en_US.cupsPrintQuality Draft/Draft: "" +*cupsPrintQuality Normal: "<>setpagedevice" +*en_US.cupsPrintQuality Normal/Normal: "" +*cupsPrintQuality High: "<>setpagedevice" +*en_US.cupsPrintQuality High/High: "" +*CloseUI: *cupsPrintQuality +*% ColorModel from urf-supported +*OpenUI *ColorModel: PickOne +*OrderDependency: 10 AnySetup *ColorModel +*en_US.Translation ColorModel/Color Mode: "" +*ColorModel Gray: "<>setpagedevice" +*en_US.ColorModel Gray/Grayscale: "" +*DefaultColorModel: Gray +*CloseUI: *ColorModel +*APPrinterPreset Gray_with_Paper_Auto-Detect_-_Draft/Draft B&W: " + *cupsPrintQuality Draft *ColorModel Gray + com.apple.print.preset.graphicsType General + com.apple.print.preset.quality low + com.apple.print.preset.media-front-coating autodetect + com.apple.print.preset.output-mode monochrome" +*End +*APPrinterPreset Gray_with_Paper_Auto-Detect/Black and White: " + *cupsPrintQuality Normal *ColorModel Gray + com.apple.print.preset.graphicsType General + com.apple.print.preset.quality mid + com.apple.print.preset.media-front-coating autodetect + com.apple.print.preset.output-mode monochrome" +*End +*APPrinterPreset Photo_with_Paper_Auto-Detect/Photo: " + *cupsPrintQuality High *ColorModel Gray + com.apple.print.preset.graphicsType Photo + com.apple.print.preset.quality high + com.apple.print.preset.media-front-coating autodetect + com.apple.print.preset.output-mode color" +*End +*OpenUI *Duplex: PickOne +*OrderDependency: 10 AnySetup *Duplex +*en_US.Translation Duplex/2-Sided Printing: "" +*DefaultDuplex: None +*Duplex None: "<>setpagedevice" +*en_US.Duplex None/Off (1-Sided): "" +*Duplex DuplexNoTumble: "<>setpagedevice" +*en_US.Duplex DuplexNoTumble/Long-Edge (Portrait): "" +*Duplex DuplexTumble: "<>setpagedevice" +*en_US.Duplex DuplexTumble/Short-Edge (Landscape): "" +*CloseUI: *Duplex +*cupsBackSide: Normal +*OpenUI *OutputBin: PickOne +*OrderDependency: 10 AnySetup *OutputBin +*DefaultOutputBin: FaceDown +*DefaultOutputOrder: Normal +*OutputBin FaceDown: "" +*en_US.OutputBin FaceDown/Face Down: "" +*PageStackOrder FaceDown: Normal +*CloseUI: *OutputBin \ No newline at end of file diff --git a/cups/ppd/HL-L2370DN.ppd.O b/cups/ppd/HL-L2370DN.ppd.O new file mode 100644 index 0000000..f61a1b2 --- /dev/null +++ b/cups/ppd/HL-L2370DN.ppd.O @@ -0,0 +1,198 @@ +*PPD-Adobe: "4.3" +*cupsMandatory: attributes-charset attributes-natural-language printer-uri +*FormatVersion: "4.3" +*FileVersion: "2.4" +*LanguageVersion: English +*LanguageEncoding: ISOLatin1 +*PSVersion: "(3010.000) 0" +*LanguageLevel: "3" +*FileSystem: False +*PCFileName: "ippeve.ppd" +*Manufacturer: "Brother" +*ModelName: "HL-L2370DN series" +*Product: "(HL-L2370DN series)" +*NickName: "HL-L2370DN series - IPP Everywhere" +*ShortNickName: "HL-L2370DN series - IPP Everywhere" +*ColorDevice: False +*cupsVersion: 2.4 +*cupsSNMPSupplies: False +*cupsLanguages: "en_US" +*APSupplies: "http://BRN94DDF8032B71.local./net/net/airprint.html" +*cupsManualCopies: True +*cupsFilter2: "image/urf image/urf 100 -" +*OpenUI *PageSize: PickOne +*OrderDependency: 10 AnySetup *PageSize +*DefaultPageSize: A4 +*PageSize 215x345mm: "<>setpagedevice" +*PageSize 3x5: "<>setpagedevice" +*PageSize A4: "<>setpagedevice" +*PageSize A5: "<>setpagedevice" +*PageSize A6: "<>setpagedevice" +*PageSize Env10: "<>setpagedevice" +*PageSize EnvC5: "<>setpagedevice" +*PageSize EnvDL: "<>setpagedevice" +*PageSize EnvMonarch: "<>setpagedevice" +*PageSize Executive: "<>setpagedevice" +*PageSize FanFoldGermanLegal: "<>setpagedevice" +*PageSize ISOB5: "<>setpagedevice" +*PageSize Legal: "<>setpagedevice" +*PageSize Letter: "<>setpagedevice" +*PageSize Oficio: "<>setpagedevice" +*CloseUI: *PageSize +*OpenUI *PageRegion: PickOne +*OrderDependency: 10 AnySetup *PageRegion +*DefaultPageRegion: A4 +*PageRegion 215x345mm: "<>setpagedevice" +*PageRegion 3x5: "<>setpagedevice" +*PageRegion A4: "<>setpagedevice" +*PageRegion A5: "<>setpagedevice" +*PageRegion A6: "<>setpagedevice" +*PageRegion Env10: "<>setpagedevice" +*PageRegion EnvC5: "<>setpagedevice" +*PageRegion EnvDL: "<>setpagedevice" +*PageRegion EnvMonarch: "<>setpagedevice" +*PageRegion Executive: "<>setpagedevice" +*PageRegion FanFoldGermanLegal: "<>setpagedevice" +*PageRegion ISOB5: "<>setpagedevice" +*PageRegion Legal: "<>setpagedevice" +*PageRegion Letter: "<>setpagedevice" +*PageRegion Oficio: "<>setpagedevice" +*CloseUI: *PageRegion +*DefaultImageableArea: A4 +*DefaultPaperDimension: A4 +*ImageableArea 215x345mm: "12.245669291339 12.245669291339 597.203149606299 965.707086614173" +*PaperDimension 215x345mm: "609.448818897638 977.952755905512" +*ImageableArea 3x5: "12.245669291339 12.245669291339 203.754330708661 347.754330708661" +*PaperDimension 3x5: "216 360" +*ImageableArea A4: "12.245669291339 12.245669291339 583.029921259842 829.644094488189" +*PaperDimension A4: "595.275590551181 841.889763779528" +*ImageableArea A5: "12.245669291339 12.245669291339 407.28188976378 583.029921259842" +*PaperDimension A5: "419.527559055118 595.275590551181" +*ImageableArea A6: "12.245669291339 12.245669291339 285.392125984252 407.28188976378" +*PaperDimension A6: "297.637795275591 419.527559055118" +*ImageableArea Env10: "12.245669291339 12.245669291339 284.740157480315 671.754330708661" +*PaperDimension Env10: "296.985826771654 684" +*ImageableArea EnvC5: "12.245669291339 12.245669291339 446.966929133858 636.888188976378" +*PaperDimension EnvC5: "459.212598425197 649.133858267717" +*ImageableArea EnvDL: "12.245669291339 12.245669291339 299.565354330709 611.376377952756" +*PaperDimension EnvDL: "311.811023622047 623.622047244094" +*ImageableArea EnvMonarch: "12.245669291339 12.245669291339 266.740157480315 527.754330708661" +*PaperDimension EnvMonarch: "278.985826771654 540" +*ImageableArea Executive: "12.245669291339 12.245669291339 509.754330708661 743.754330708661" +*PaperDimension Executive: "522 756" +*ImageableArea FanFoldGermanLegal: "12.245669291339 12.245669291339 599.754330708661 923.754330708661" +*PaperDimension FanFoldGermanLegal: "612 936" +*ImageableArea ISOB5: "12.245669291339 12.245669291339 486.651968503937 696.415748031496" +*PaperDimension ISOB5: "498.897637795276 708.661417322835" +*ImageableArea Legal: "12.245669291339 12.245669291339 599.754330708661 995.754330708661" +*PaperDimension Legal: "612 1008" +*ImageableArea Letter: "12.245669291339 12.245669291339 599.754330708661 779.754330708661" +*PaperDimension Letter: "612 792" +*ImageableArea Oficio: "12.245669291339 12.245669291339 599.754330708661 952.554330708661" +*PaperDimension Oficio: "612 964.8" +*HWMargins: "12.245669291339 12.245669291339 12.245669291339 12.245669291339" +*ParamCustomPageSize Width: 1 points 216 612 +*ParamCustomPageSize Height: 2 points 360 1008 +*ParamCustomPageSize WidthOffset: 3 points 0 0 +*ParamCustomPageSize HeightOffset: 4 points 0 0 +*ParamCustomPageSize Orientation: 5 int 0 3 +*CustomPageSize True: "pop pop pop <>setpagedevice" +*OpenUI *InputSlot: PickOne +*OrderDependency: 10 AnySetup *InputSlot +*DefaultInputSlot: Auto +*InputSlot Auto: "<>setpagedevice" +*en_US.InputSlot Auto/Automatic: "" +*InputSlot Manual: "<>setpagedevice" +*en_US.InputSlot Manual/Manual: "" +*InputSlot Tray1: "<>setpagedevice" +*en_US.InputSlot Tray1/Tray 1: "" +*CloseUI: *InputSlot +*OpenUI *MediaType: PickOne +*OrderDependency: 10 AnySetup *MediaType +*DefaultMediaType: Stationery +*MediaType Stationery: "<>setpagedevice" +*en_US.MediaType Stationery/Stationery: "" +*MediaType StationeryLightweight: "<>setpagedevice" +*en_US.MediaType StationeryLightweight/Lightweight Paper: "" +*MediaType StationeryHeavyweight: "<>setpagedevice" +*en_US.MediaType StationeryHeavyweight/Heavyweight Paper: "" +*MediaType StationeryCover: "<>setpagedevice" +*en_US.MediaType StationeryCover/stationery-cover: "" +*MediaType Envelope: "<>setpagedevice" +*en_US.MediaType Envelope/Envelope: "" +*MediaType EnvelopeHeavyweight: "<>setpagedevice" +*en_US.MediaType EnvelopeHeavyweight/Heavyweight Envelope: "" +*MediaType EnvelopeLightweight: "<>setpagedevice" +*en_US.MediaType EnvelopeLightweight/Lightweight Envelope: "" +*MediaType StationeryRecycled: "<>setpagedevice" +*en_US.MediaType StationeryRecycled/stationery-recycled: "" +*MediaType Labels: "<>setpagedevice" +*en_US.MediaType Labels/Labels: "" +*MediaType StationeryBond: "<>setpagedevice" +*en_US.MediaType StationeryBond/stationery-bond: "" +*MediaType Com.brother.thicker: "<>setpagedevice" +*en_US.MediaType Com.brother.thicker/com.brother.thicker: "" +*MediaType Com.brother.recycled: "<>setpagedevice" +*en_US.MediaType Com.brother.recycled/com.brother.recycled: "" +*CloseUI: *MediaType +*DefaultResolution: 300dpi +*OpenUI *cupsPrintQuality: PickOne +*OrderDependency: 10 AnySetup *cupsPrintQuality +*en_US.Translation cupsPrintQuality/Print Quality: "" +*DefaultcupsPrintQuality: Normal +*cupsPrintQuality Draft: "<>setpagedevice" +*en_US.cupsPrintQuality Draft/Draft: "" +*cupsPrintQuality Normal: "<>setpagedevice" +*en_US.cupsPrintQuality Normal/Normal: "" +*cupsPrintQuality High: "<>setpagedevice" +*en_US.cupsPrintQuality High/High: "" +*CloseUI: *cupsPrintQuality +*% ColorModel from urf-supported +*OpenUI *ColorModel: PickOne +*OrderDependency: 10 AnySetup *ColorModel +*en_US.Translation ColorModel/Color Mode: "" +*ColorModel Gray: "<>setpagedevice" +*en_US.ColorModel Gray/Grayscale: "" +*DefaultColorModel: Gray +*CloseUI: *ColorModel +*APPrinterPreset Gray_with_Paper_Auto-Detect_-_Draft/Draft B&W: " + *cupsPrintQuality Draft *ColorModel Gray + com.apple.print.preset.graphicsType General + com.apple.print.preset.quality low + com.apple.print.preset.media-front-coating autodetect + com.apple.print.preset.output-mode monochrome" +*End +*APPrinterPreset Gray_with_Paper_Auto-Detect/Black and White: " + *cupsPrintQuality Normal *ColorModel Gray + com.apple.print.preset.graphicsType General + com.apple.print.preset.quality mid + com.apple.print.preset.media-front-coating autodetect + com.apple.print.preset.output-mode monochrome" +*End +*APPrinterPreset Photo_with_Paper_Auto-Detect/Photo: " + *cupsPrintQuality High *ColorModel Gray + com.apple.print.preset.graphicsType Photo + com.apple.print.preset.quality high + com.apple.print.preset.media-front-coating autodetect + com.apple.print.preset.output-mode color" +*End +*OpenUI *Duplex: PickOne +*OrderDependency: 10 AnySetup *Duplex +*en_US.Translation Duplex/2-Sided Printing: "" +*DefaultDuplex: None +*Duplex None: "<>setpagedevice" +*en_US.Duplex None/Off (1-Sided): "" +*Duplex DuplexNoTumble: "<>setpagedevice" +*en_US.Duplex DuplexNoTumble/Long-Edge (Portrait): "" +*Duplex DuplexTumble: "<>setpagedevice" +*en_US.Duplex DuplexTumble/Short-Edge (Landscape): "" +*CloseUI: *Duplex +*cupsBackSide: Normal +*OpenUI *OutputBin: PickOne +*OrderDependency: 10 AnySetup *OutputBin +*DefaultOutputBin: FaceDown +*DefaultOutputOrder: Normal +*OutputBin FaceDown: "" +*en_US.OutputBin FaceDown/Face Down: "" +*PageStackOrder FaceDown: Normal +*CloseUI: *OutputBin \ No newline at end of file diff --git a/docker-compose.local.yml b/docker-compose.local.yml new file mode 100644 index 0000000..cdd6dc1 --- /dev/null +++ b/docker-compose.local.yml @@ -0,0 +1,39 @@ +services: + hobbysign: + container_name: hobbysign + image: gitea.lan.hobbyhimmel.de/hobbyhimmel/custom-tomee:latest + ports: + - "8888:8080" + - "8000:8000" # <--- Debugging-Port freigeben + stdin_open: true + tty: true + environment: + - HOHIHA_OUTPUT_DIR=/usr/local/tomee/output + - HOHIHA_ODOO_CONFIG=/usr/local/tomee/config/secrets.yml + - JPDA_ADDRESS=*:8000 # <--- Debug-Port in der VM + - JPDA_TRANSPORT=dt_socket # <--- Java Debug Transport + command: ["catalina.sh", "jpda", "run"] # <--- startet TomEE mit JPDA + volumes: + - hobbysign_output:/usr/local/tomee/output + - hobbysign_config:/usr/local/tomee/config + - hobbysign_webapps:/usr/local/tomee/webapps + - /var/run/cups/cups.sock:/var/run/cups/cups.sock + + + user: "1000:1000" + restart: always + networks: + - odoo-180_local_npm-nw + +volumes: + hobbysign_output: + name: hobbysign_output + hobbysign_config: + name: hobbysign_config + hobbysign_webapps: + name: hobbysign_webapps + +networks: + odoo-180_local_npm-nw: + external: true + diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..bd2b309 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,42 @@ +services: + hobbysign: + container_name: hobbysign + image: gitea.lan.hobbyhimmel.de/hobbyhimmel/custom-tomee:latest + stdin_open: true + tty: true + environment: + - HOHIHA_OUTPUT_DIR=/usr/local/tomee/output + - HOHIHA_ODOO_CONFIG=/usr/local/tomee/config/secrets.yml + volumes: + - hobbysign_output:/usr/local/tomee/output + - hobbysign_config:/usr/local/tomee/config + - hobbysign_webapps:/usr/local/tomee/webapps + - /var/run/cups/cups.sock:/var/run/cups/cups.sock + healthcheck: + test: ["CMD", "lpstat", "-v"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 10s + + user: "1000:1000" + restart: unless-stopped + networks: + - hobbyhimmel_odoo_13_default + - npm-nw + +volumes: + hobbysign_output: + name: hobbysign_output + hobbysign_config: + name: hobbysign_config + hobbysign_webapps: + name: hobbysign_webapps + +networks: + hobbyhimmel_odoo_13_default: + external: true + name: hobbyhimmel_odoo_13_default + npm-nw: + external: true + name: npm-nw diff --git a/dockerfile b/dockerfile new file mode 100644 index 0000000..ece017d --- /dev/null +++ b/dockerfile @@ -0,0 +1,39 @@ +FROM tomee:9.1.3-jre17-Semeru-ubuntu-plume + +# Install nano +USER root +RUN apt update && apt install -y nano cups-client cups-bsd && apt clean + +# Create a user with a home directory +RUN useradd -u 1000 -m -d /home/hobbyadmin -s /bin/bash hobbyadmin + +# Set the working directory +WORKDIR /usr/local/tomee + +# Create the output directory and set permissions +RUN mkdir -p /usr/local/tomee/output && chown -R 1000:1000 /usr/local/tomee/output +RUN mkdir -p /usr/local/tomee/config && chown -R 1000:1000 /usr/local/tomee/config + +# Copy application files +# COPY . /usr/local/tomee +RUN if [ -d /usr/local/tomee/webapps/ROOT ]; then mv /usr/local/tomee/webapps/ROOT /usr/local/tomee/webapps/welcome; fi +RUN if [ -f /usr/local/tomee/webapps/ROOT.war ]; then mv /usr/local/tomee/webapps/ROOT.war /usr/local/tomee/webapps/admin.war; fi +COPY tomcat-users.xml /usr/local/tomee/conf/tomcat-users.xml +COPY manager.xml /usr/local/tomee/conf/Catalina/localhost/manager.xml +# Create a startup script to set umask and run the application +RUN echo '#!/bin/sh' > /usr/local/tomee/start.sh \ + && echo 'umask 002' >> /usr/local/tomee/start.sh \ + && echo 'catalina.sh run' >> /usr/local/tomee/start.sh + +# Make the startup script executable +RUN chmod +x /usr/local/tomee/start.sh + + +# Change ownership of all files to user 1000 +RUN chown -R 1000:1000 /usr/local/tomee + +# Set the user to "hobbyadmin" (replace 1000 with the actual UID of hobbyadmin) +USER hobbyadmin + +# Run the startup script +CMD ["/usr/local/tomee/start.sh"] diff --git a/dockerfile.local b/dockerfile.local new file mode 100644 index 0000000..6a87fd4 --- /dev/null +++ b/dockerfile.local @@ -0,0 +1,39 @@ +FROM tomee:9.1.3-jre17-Semeru-ubuntu-plume + +# Install nano +USER root +RUN apt update && apt install -y nano cups-client cups-bsd && apt clean + +# Create a user with a home directory +RUN useradd -u 1000 -m -d /home/lotzm -s /bin/bash lotzm + +# Set the working directory +WORKDIR /usr/local/tomee + +# Create the output directory and set permissions +RUN mkdir -p /usr/local/tomee/output && chown -R 1000:1000 /usr/local/tomee/output +RUN mkdir -p /usr/local/tomee/config && chown -R 1000:1000 /usr/local/tomee/config + +# Copy application files +# COPY . /usr/local/tomee +RUN if [ -d /usr/local/tomee/webapps/ROOT ]; then mv /usr/local/tomee/webapps/ROOT /usr/local/tomee/webapps/welcome; fi +RUN if [ -f /usr/local/tomee/webapps/ROOT.war ]; then mv /usr/local/tomee/webapps/ROOT.war /usr/local/tomee/webapps/admin.war; fi +COPY tomcat-users.xml /usr/local/tomee/conf/tomcat-users.xml +COPY manager.xml /usr/local/tomee/conf/Catalina/localhost/manager.xml +# Create a startup script to set umask and run the application +RUN echo '#!/bin/sh' > /usr/local/tomee/start.sh \ + && echo 'umask 002' >> /usr/local/tomee/start.sh \ + && echo 'catalina.sh run' >> /usr/local/tomee/start.sh + +# Make the startup script executable +RUN chmod +x /usr/local/tomee/start.sh + + +# Change ownership of all files to user 1000 +RUN chown -R 1000:1000 /usr/local/tomee + +# Set the user to "lotzm" (replace 1000 with the actual UID of lotzm) +USER lotzm + +# Run the startup script +CMD ["/usr/local/tomee/start.sh"] diff --git a/logs.xml b/logs.xml new file mode 100644 index 0000000..df3d1ce --- /dev/null +++ b/logs.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/manager.xml b/manager.xml new file mode 100644 index 0000000..363f5bd --- /dev/null +++ b/manager.xml @@ -0,0 +1 @@ + diff --git a/start.local.sh b/start.local.sh new file mode 100755 index 0000000..1dd1c8a --- /dev/null +++ b/start.local.sh @@ -0,0 +1 @@ +docker compose -f docker-compose.local.yml -p hobbysign up -d \ No newline at end of file diff --git a/start.sh b/start.sh new file mode 100755 index 0000000..1a88308 --- /dev/null +++ b/start.sh @@ -0,0 +1 @@ +docker compose -p hobbysign up -d \ No newline at end of file diff --git a/stop.sh b/stop.sh new file mode 100755 index 0000000..1d6ca8d --- /dev/null +++ b/stop.sh @@ -0,0 +1 @@ +docker compose -p hobbysign down diff --git a/tomcat-users.xml b/tomcat-users.xml new file mode 100644 index 0000000..234bb67 --- /dev/null +++ b/tomcat-users.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + diff --git a/web.xml b/web.xml new file mode 100644 index 0000000..62905e4 --- /dev/null +++ b/web.xml @@ -0,0 +1,4694 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + org.apache.catalina.servlets.DefaultServlet + + debug + 0 + + + listings + true + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + jsp + org.apache.jasper.servlet.JspServlet + + fork + false + + + xpoweredBy + false + + + + development + false + + 3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + / + + + + jsp + *.jsp + *.jspx + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 30 + + + + + + + + + + 123 + application/vnd.lotus-1-2-3 + + + 3dml + text/vnd.in3d.3dml + + + 3ds + image/x-3ds + + + 3g2 + video/3gpp2 + + + 3gp + video/3gpp + + + 7z + application/x-7z-compressed + + + aab + application/x-authorware-bin + + + aac + audio/x-aac + + + aam + application/x-authorware-map + + + aas + application/x-authorware-seg + + + abs + audio/x-mpeg + + + abw + application/x-abiword + + + ac + application/pkix-attr-cert + + + acc + application/vnd.americandynamics.acc + + + ace + application/x-ace-compressed + + + acu + application/vnd.acucobol + + + acutc + application/vnd.acucorp + + + adp + audio/adpcm + + + aep + application/vnd.audiograph + + + afm + application/x-font-type1 + + + afp + application/vnd.ibm.modcap + + + ahead + application/vnd.ahead.space + + + ai + application/postscript + + + aif + audio/x-aiff + + + aifc + audio/x-aiff + + + aiff + audio/x-aiff + + + aim + application/x-aim + + + air + application/vnd.adobe.air-application-installer-package+zip + + + ait + application/vnd.dvb.ait + + + ami + application/vnd.amiga.ami + + + anx + application/annodex + + + apk + application/vnd.android.package-archive + + + appcache + text/cache-manifest + + + application + application/x-ms-application + + + apr + application/vnd.lotus-approach + + + arc + application/x-freearc + + + art + image/x-jg + + + asc + application/pgp-signature + + + asf + video/x-ms-asf + + + asm + text/x-asm + + + aso + application/vnd.accpac.simply.aso + + + asx + video/x-ms-asf + + + atc + application/vnd.acucorp + + + atom + application/atom+xml + + + atomcat + application/atomcat+xml + + + atomsvc + application/atomsvc+xml + + + atx + application/vnd.antix.game-component + + + au + audio/basic + + + avi + video/x-msvideo + + + avx + video/x-rad-screenplay + + + aw + application/applixware + + + axa + audio/annodex + + + axv + video/annodex + + + azf + application/vnd.airzip.filesecure.azf + + + azs + application/vnd.airzip.filesecure.azs + + + azw + application/vnd.amazon.ebook + + + bat + application/x-msdownload + + + bcpio + application/x-bcpio + + + bdf + application/x-font-bdf + + + bdm + application/vnd.syncml.dm+wbxml + + + bed + application/vnd.realvnc.bed + + + bh2 + application/vnd.fujitsu.oasysprs + + + bin + application/octet-stream + + + blb + application/x-blorb + + + blorb + application/x-blorb + + + bmi + application/vnd.bmi + + + bmp + image/bmp + + + body + text/html + + + book + application/vnd.framemaker + + + box + application/vnd.previewsystems.box + + + boz + application/x-bzip2 + + + bpk + application/octet-stream + + + btif + image/prs.btif + + + bz + application/x-bzip + + + bz2 + application/x-bzip2 + + + c + text/x-c + + + c11amc + application/vnd.cluetrust.cartomobile-config + + + c11amz + application/vnd.cluetrust.cartomobile-config-pkg + + + c4d + application/vnd.clonk.c4group + + + c4f + application/vnd.clonk.c4group + + + c4g + application/vnd.clonk.c4group + + + c4p + application/vnd.clonk.c4group + + + c4u + application/vnd.clonk.c4group + + + cab + application/vnd.ms-cab-compressed + + + caf + audio/x-caf + + + cap + application/vnd.tcpdump.pcap + + + car + application/vnd.curl.car + + + cat + application/vnd.ms-pki.seccat + + + cb7 + application/x-cbr + + + cba + application/x-cbr + + + cbr + application/x-cbr + + + cbt + application/x-cbr + + + cbz + application/x-cbr + + + cc + text/x-c + + + cct + application/x-director + + + ccxml + application/ccxml+xml + + + cdbcmsg + application/vnd.contact.cmsg + + + cdf + application/x-cdf + + + cdkey + application/vnd.mediastation.cdkey + + + cdmia + application/cdmi-capability + + + cdmic + application/cdmi-container + + + cdmid + application/cdmi-domain + + + cdmio + application/cdmi-object + + + cdmiq + application/cdmi-queue + + + cdx + chemical/x-cdx + + + cdxml + application/vnd.chemdraw+xml + + + cdy + application/vnd.cinderella + + + cer + application/pkix-cert + + + cfs + application/x-cfs-compressed + + + cgm + image/cgm + + + chat + application/x-chat + + + chm + application/vnd.ms-htmlhelp + + + chrt + application/vnd.kde.kchart + + + cif + chemical/x-cif + + + cii + application/vnd.anser-web-certificate-issue-initiation + + + cil + application/vnd.ms-artgalry + + + cla + application/vnd.claymore + + + class + application/java + + + clkk + application/vnd.crick.clicker.keyboard + + + clkp + application/vnd.crick.clicker.palette + + + clkt + application/vnd.crick.clicker.template + + + clkw + application/vnd.crick.clicker.wordbank + + + clkx + application/vnd.crick.clicker + + + clp + application/x-msclip + + + cmc + application/vnd.cosmocaller + + + cmdf + chemical/x-cmdf + + + cml + chemical/x-cml + + + cmp + application/vnd.yellowriver-custom-menu + + + cmx + image/x-cmx + + + cod + application/vnd.rim.cod + + + com + application/x-msdownload + + + conf + text/plain + + + cpio + application/x-cpio + + + cpp + text/x-c + + + cpt + application/mac-compactpro + + + crd + application/x-mscardfile + + + crl + application/pkix-crl + + + crt + application/x-x509-ca-cert + + + cryptonote + application/vnd.rig.cryptonote + + + csh + application/x-csh + + + csml + chemical/x-csml + + + csp + application/vnd.commonspace + + + css + text/css + + + cst + application/x-director + + + csv + text/csv + + + cu + application/cu-seeme + + + curl + text/vnd.curl + + + cww + application/prs.cww + + + cxt + application/x-director + + + cxx + text/x-c + + + dae + model/vnd.collada+xml + + + daf + application/vnd.mobius.daf + + + dart + application/vnd.dart + + + dataless + application/vnd.fdsn.seed + + + davmount + application/davmount+xml + + + dbk + application/docbook+xml + + + dcr + application/x-director + + + dcurl + text/vnd.curl.dcurl + + + dd2 + application/vnd.oma.dd2+xml + + + ddd + application/vnd.fujixerox.ddd + + + deb + application/x-debian-package + + + def + text/plain + + + deploy + application/octet-stream + + + der + application/x-x509-ca-cert + + + dfac + application/vnd.dreamfactory + + + dgc + application/x-dgc-compressed + + + dib + image/bmp + + + dic + text/x-c + + + dir + application/x-director + + + dis + application/vnd.mobius.dis + + + dist + application/octet-stream + + + distz + application/octet-stream + + + djv + image/vnd.djvu + + + djvu + image/vnd.djvu + + + dll + application/x-msdownload + + + dmg + application/x-apple-diskimage + + + dmp + application/vnd.tcpdump.pcap + + + dms + application/octet-stream + + + dna + application/vnd.dna + + + doc + application/msword + + + docm + application/vnd.ms-word.document.macroenabled.12 + + + docx + application/vnd.openxmlformats-officedocument.wordprocessingml.document + + + dot + application/msword + + + dotm + application/vnd.ms-word.template.macroenabled.12 + + + dotx + application/vnd.openxmlformats-officedocument.wordprocessingml.template + + + dp + application/vnd.osgi.dp + + + dpg + application/vnd.dpgraph + + + dra + audio/vnd.dra + + + dsc + text/prs.lines.tag + + + dssc + application/dssc+der + + + dtb + application/x-dtbook+xml + + + dtd + application/xml-dtd + + + dts + audio/vnd.dts + + + dtshd + audio/vnd.dts.hd + + + dump + application/octet-stream + + + dv + video/x-dv + + + dvb + video/vnd.dvb.file + + + dvi + application/x-dvi + + + dwf + model/vnd.dwf + + + dwg + image/vnd.dwg + + + dxf + image/vnd.dxf + + + dxp + application/vnd.spotfire.dxp + + + dxr + application/x-director + + + ecelp4800 + audio/vnd.nuera.ecelp4800 + + + ecelp7470 + audio/vnd.nuera.ecelp7470 + + + ecelp9600 + audio/vnd.nuera.ecelp9600 + + + ecma + application/ecmascript + + + edm + application/vnd.novadigm.edm + + + edx + application/vnd.novadigm.edx + + + efif + application/vnd.picsel + + + ei6 + application/vnd.pg.osasli + + + elc + application/octet-stream + + + emf + application/x-msmetafile + + + eml + message/rfc822 + + + emma + application/emma+xml + + + emz + application/x-msmetafile + + + eol + audio/vnd.digital-winds + + + eot + application/vnd.ms-fontobject + + + eps + application/postscript + + + epub + application/epub+zip + + + es3 + application/vnd.eszigno3+xml + + + esa + application/vnd.osgi.subsystem + + + esf + application/vnd.epson.esf + + + et3 + application/vnd.eszigno3+xml + + + etx + text/x-setext + + + eva + application/x-eva + + + evy + application/x-envoy + + + exe + application/octet-stream + + + exi + application/exi + + + ext + application/vnd.novadigm.ext + + + ez + application/andrew-inset + + + ez2 + application/vnd.ezpix-album + + + ez3 + application/vnd.ezpix-package + + + f + text/x-fortran + + + f4v + video/x-f4v + + + f77 + text/x-fortran + + + f90 + text/x-fortran + + + fbs + image/vnd.fastbidsheet + + + fcdt + application/vnd.adobe.formscentral.fcdt + + + fcs + application/vnd.isac.fcs + + + fdf + application/vnd.fdf + + + fe_launch + application/vnd.denovo.fcselayout-link + + + fg5 + application/vnd.fujitsu.oasysgp + + + fgd + application/x-director + + + fh + image/x-freehand + + + fh4 + image/x-freehand + + + fh5 + image/x-freehand + + + fh7 + image/x-freehand + + + fhc + image/x-freehand + + + fig + application/x-xfig + + + flac + audio/flac + + + fli + video/x-fli + + + flo + application/vnd.micrografx.flo + + + flv + video/x-flv + + + flw + application/vnd.kde.kivio + + + flx + text/vnd.fmi.flexstor + + + fly + text/vnd.fly + + + fm + application/vnd.framemaker + + + fnc + application/vnd.frogans.fnc + + + for + text/x-fortran + + + fpx + image/vnd.fpx + + + frame + application/vnd.framemaker + + + fsc + application/vnd.fsc.weblaunch + + + fst + image/vnd.fst + + + ftc + application/vnd.fluxtime.clip + + + fti + application/vnd.anser-web-funds-transfer-initiation + + + fvt + video/vnd.fvt + + + fxp + application/vnd.adobe.fxp + + + fxpl + application/vnd.adobe.fxp + + + fzs + application/vnd.fuzzysheet + + + g2w + application/vnd.geoplan + + + g3 + image/g3fax + + + g3w + application/vnd.geospace + + + gac + application/vnd.groove-account + + + gam + application/x-tads + + + gbr + application/rpki-ghostbusters + + + gca + application/x-gca-compressed + + + gdl + model/vnd.gdl + + + geo + application/vnd.dynageo + + + gex + application/vnd.geometry-explorer + + + ggb + application/vnd.geogebra.file + + + ggt + application/vnd.geogebra.tool + + + ghf + application/vnd.groove-help + + + gif + image/gif + + + gim + application/vnd.groove-identity-message + + + gml + application/gml+xml + + + gmx + application/vnd.gmx + + + gnumeric + application/x-gnumeric + + + gph + application/vnd.flographit + + + gpx + application/gpx+xml + + + gqf + application/vnd.grafeq + + + gqs + application/vnd.grafeq + + + gram + application/srgs + + + gramps + application/x-gramps-xml + + + gre + application/vnd.geometry-explorer + + + grv + application/vnd.groove-injector + + + grxml + application/srgs+xml + + + gsf + application/x-font-ghostscript + + + gtar + application/x-gtar + + + gtm + application/vnd.groove-tool-message + + + gtw + model/vnd.gtw + + + gv + text/vnd.graphviz + + + gxf + application/gxf + + + gxt + application/vnd.geonext + + + gz + application/x-gzip + + + h + text/x-c + + + h261 + video/h261 + + + h263 + video/h263 + + + h264 + video/h264 + + + hal + application/vnd.hal+xml + + + hbci + application/vnd.hbci + + + hdf + application/x-hdf + + + hh + text/x-c + + + hlp + application/winhlp + + + hpgl + application/vnd.hp-hpgl + + + hpid + application/vnd.hp-hpid + + + hps + application/vnd.hp-hps + + + hqx + application/mac-binhex40 + + + htc + text/x-component + + + htke + application/vnd.kenameaapp + + + htm + text/html + + + html + text/html + + + hvd + application/vnd.yamaha.hv-dic + + + hvp + application/vnd.yamaha.hv-voice + + + hvs + application/vnd.yamaha.hv-script + + + i2g + application/vnd.intergeo + + + icc + application/vnd.iccprofile + + + ice + x-conference/x-cooltalk + + + icm + application/vnd.iccprofile + + + ico + image/x-icon + + + ics + text/calendar + + + ief + image/ief + + + ifb + text/calendar + + + ifm + application/vnd.shana.informed.formdata + + + iges + model/iges + + + igl + application/vnd.igloader + + + igm + application/vnd.insors.igm + + + igs + model/iges + + + igx + application/vnd.micrografx.igx + + + iif + application/vnd.shana.informed.interchange + + + imp + application/vnd.accpac.simply.imp + + + ims + application/vnd.ms-ims + + + in + text/plain + + + ink + application/inkml+xml + + + inkml + application/inkml+xml + + + install + application/x-install-instructions + + + iota + application/vnd.astraea-software.iota + + + ipfix + application/ipfix + + + ipk + application/vnd.shana.informed.package + + + irm + application/vnd.ibm.rights-management + + + irp + application/vnd.irepository.package+xml + + + iso + application/x-iso9660-image + + + itp + application/vnd.shana.informed.formtemplate + + + ivp + application/vnd.immervision-ivp + + + ivu + application/vnd.immervision-ivu + + + jad + text/vnd.sun.j2me.app-descriptor + + + jam + application/vnd.jam + + + jar + application/java-archive + + + java + text/x-java-source + + + jisp + application/vnd.jisp + + + jlt + application/vnd.hp-jlyt + + + jnlp + application/x-java-jnlp-file + + + joda + application/vnd.joost.joda-archive + + + jpe + image/jpeg + + + jpeg + image/jpeg + + + jpg + image/jpeg + + + jpgm + video/jpm + + + jpgv + video/jpeg + + + jpm + video/jpm + + + js + application/javascript + + + jsf + text/plain + + + json + application/json + + + jsonml + application/jsonml+json + + + jspf + text/plain + + + kar + audio/midi + + + karbon + application/vnd.kde.karbon + + + kfo + application/vnd.kde.kformula + + + kia + application/vnd.kidspiration + + + kml + application/vnd.google-earth.kml+xml + + + kmz + application/vnd.google-earth.kmz + + + kne + application/vnd.kinar + + + knp + application/vnd.kinar + + + kon + application/vnd.kde.kontour + + + kpr + application/vnd.kde.kpresenter + + + kpt + application/vnd.kde.kpresenter + + + kpxx + application/vnd.ds-keypoint + + + ksp + application/vnd.kde.kspread + + + ktr + application/vnd.kahootz + + + ktx + image/ktx + + + ktz + application/vnd.kahootz + + + kwd + application/vnd.kde.kword + + + kwt + application/vnd.kde.kword + + + lasxml + application/vnd.las.las+xml + + + latex + application/x-latex + + + lbd + application/vnd.llamagraphics.life-balance.desktop + + + lbe + application/vnd.llamagraphics.life-balance.exchange+xml + + + les + application/vnd.hhe.lesson-player + + + lha + application/x-lzh-compressed + + + link66 + application/vnd.route66.link66+xml + + + list + text/plain + + + list3820 + application/vnd.ibm.modcap + + + listafp + application/vnd.ibm.modcap + + + lnk + application/x-ms-shortcut + + + log + text/plain + + + lostxml + application/lost+xml + + + lrf + application/octet-stream + + + lrm + application/vnd.ms-lrm + + + ltf + application/vnd.frogans.ltf + + + lvp + audio/vnd.lucent.voice + + + lwp + application/vnd.lotus-wordpro + + + lzh + application/x-lzh-compressed + + + m13 + application/x-msmediaview + + + m14 + application/x-msmediaview + + + m1v + video/mpeg + + + m21 + application/mp21 + + + m2a + audio/mpeg + + + m2v + video/mpeg + + + m3a + audio/mpeg + + + m3u + audio/x-mpegurl + + + m3u8 + application/vnd.apple.mpegurl + + + m4a + audio/mp4 + + + m4b + audio/mp4 + + + m4r + audio/mp4 + + + m4u + video/vnd.mpegurl + + + m4v + video/mp4 + + + ma + application/mathematica + + + mac + image/x-macpaint + + + mads + application/mads+xml + + + mag + application/vnd.ecowin.chart + + + maker + application/vnd.framemaker + + + man + text/troff + + + mar + application/octet-stream + + + mathml + application/mathml+xml + + + mb + application/mathematica + + + mbk + application/vnd.mobius.mbk + + + mbox + application/mbox + + + mc1 + application/vnd.medcalcdata + + + mcd + application/vnd.mcd + + + mcurl + text/vnd.curl.mcurl + + + mdb + application/x-msaccess + + + mdi + image/vnd.ms-modi + + + me + text/troff + + + mesh + model/mesh + + + meta4 + application/metalink4+xml + + + metalink + application/metalink+xml + + + mets + application/mets+xml + + + mfm + application/vnd.mfmp + + + mft + application/rpki-manifest + + + mgp + application/vnd.osgeo.mapguide.package + + + mgz + application/vnd.proteus.magazine + + + mid + audio/midi + + + midi + audio/midi + + + mie + application/x-mie + + + mif + application/x-mif + + + mime + message/rfc822 + + + mj2 + video/mj2 + + + mjp2 + video/mj2 + + + mk3d + video/x-matroska + + + mka + audio/x-matroska + + + mks + video/x-matroska + + + mkv + video/x-matroska + + + mlp + application/vnd.dolby.mlp + + + mmd + application/vnd.chipnuts.karaoke-mmd + + + mmf + application/vnd.smaf + + + mmr + image/vnd.fujixerox.edmics-mmr + + + mng + video/x-mng + + + mny + application/x-msmoney + + + mobi + application/x-mobipocket-ebook + + + mods + application/mods+xml + + + mov + video/quicktime + + + movie + video/x-sgi-movie + + + mp1 + audio/mpeg + + + mp2 + audio/mpeg + + + mp21 + application/mp21 + + + mp2a + audio/mpeg + + + mp3 + audio/mpeg + + + mp4 + video/mp4 + + + mp4a + audio/mp4 + + + mp4s + application/mp4 + + + mp4v + video/mp4 + + + mpa + audio/mpeg + + + mpc + application/vnd.mophun.certificate + + + mpe + video/mpeg + + + mpeg + video/mpeg + + + mpega + audio/x-mpeg + + + mpg + video/mpeg + + + mpg4 + video/mp4 + + + mpga + audio/mpeg + + + mpkg + application/vnd.apple.installer+xml + + + mpm + application/vnd.blueice.multipass + + + mpn + application/vnd.mophun.application + + + mpp + application/vnd.ms-project + + + mpt + application/vnd.ms-project + + + mpv2 + video/mpeg2 + + + mpy + application/vnd.ibm.minipay + + + mqy + application/vnd.mobius.mqy + + + mrc + application/marc + + + mrcx + application/marcxml+xml + + + ms + text/troff + + + mscml + application/mediaservercontrol+xml + + + mseed + application/vnd.fdsn.mseed + + + mseq + application/vnd.mseq + + + msf + application/vnd.epson.msf + + + msh + model/mesh + + + msi + application/x-msdownload + + + msl + application/vnd.mobius.msl + + + msty + application/vnd.muvee.style + + + mts + model/vnd.mts + + + mus + application/vnd.musician + + + musicxml + application/vnd.recordare.musicxml+xml + + + mvb + application/x-msmediaview + + + mwf + application/vnd.mfer + + + mxf + application/mxf + + + mxl + application/vnd.recordare.musicxml + + + mxml + application/xv+xml + + + mxs + application/vnd.triscape.mxs + + + mxu + video/vnd.mpegurl + + + n-gage + application/vnd.nokia.n-gage.symbian.install + + + n3 + text/n3 + + + nb + application/mathematica + + + nbp + application/vnd.wolfram.player + + + nc + application/x-netcdf + + + ncx + application/x-dtbncx+xml + + + nfo + text/x-nfo + + + ngdat + application/vnd.nokia.n-gage.data + + + nitf + application/vnd.nitf + + + nlu + application/vnd.neurolanguage.nlu + + + nml + application/vnd.enliven + + + nnd + application/vnd.noblenet-directory + + + nns + application/vnd.noblenet-sealer + + + nnw + application/vnd.noblenet-web + + + npx + image/vnd.net-fpx + + + nsc + application/x-conference + + + nsf + application/vnd.lotus-notes + + + ntf + application/vnd.nitf + + + nzb + application/x-nzb + + + oa2 + application/vnd.fujitsu.oasys2 + + + oa3 + application/vnd.fujitsu.oasys3 + + + oas + application/vnd.fujitsu.oasys + + + obd + application/x-msbinder + + + obj + application/x-tgif + + + oda + application/oda + + + + odb + application/vnd.oasis.opendocument.database + + + + odc + application/vnd.oasis.opendocument.chart + + + + odf + application/vnd.oasis.opendocument.formula + + + odft + application/vnd.oasis.opendocument.formula-template + + + + odg + application/vnd.oasis.opendocument.graphics + + + + odi + application/vnd.oasis.opendocument.image + + + + odm + application/vnd.oasis.opendocument.text-master + + + + odp + application/vnd.oasis.opendocument.presentation + + + + ods + application/vnd.oasis.opendocument.spreadsheet + + + + odt + application/vnd.oasis.opendocument.text + + + oga + audio/ogg + + + ogg + audio/ogg + + + ogv + video/ogg + + + + ogx + application/ogg + + + omdoc + application/omdoc+xml + + + onepkg + application/onenote + + + onetmp + application/onenote + + + onetoc + application/onenote + + + onetoc2 + application/onenote + + + opf + application/oebps-package+xml + + + opml + text/x-opml + + + oprc + application/vnd.palm + + + org + application/vnd.lotus-organizer + + + osf + application/vnd.yamaha.openscoreformat + + + osfpvg + application/vnd.yamaha.openscoreformat.osfpvg+xml + + + otc + application/vnd.oasis.opendocument.chart-template + + + otf + font/otf + + + + otg + application/vnd.oasis.opendocument.graphics-template + + + + oth + application/vnd.oasis.opendocument.text-web + + + oti + application/vnd.oasis.opendocument.image-template + + + + otp + application/vnd.oasis.opendocument.presentation-template + + + + ots + application/vnd.oasis.opendocument.spreadsheet-template + + + + ott + application/vnd.oasis.opendocument.text-template + + + oxps + application/oxps + + + oxt + application/vnd.openofficeorg.extension + + + p + text/x-pascal + + + p10 + application/pkcs10 + + + p12 + application/x-pkcs12 + + + p7b + application/x-pkcs7-certificates + + + p7c + application/pkcs7-mime + + + p7m + application/pkcs7-mime + + + p7r + application/x-pkcs7-certreqresp + + + p7s + application/pkcs7-signature + + + p8 + application/pkcs8 + + + pas + text/x-pascal + + + paw + application/vnd.pawaafile + + + pbd + application/vnd.powerbuilder6 + + + pbm + image/x-portable-bitmap + + + pcap + application/vnd.tcpdump.pcap + + + pcf + application/x-font-pcf + + + pcl + application/vnd.hp-pcl + + + pclxl + application/vnd.hp-pclxl + + + pct + image/pict + + + pcurl + application/vnd.curl.pcurl + + + pcx + image/x-pcx + + + pdb + application/vnd.palm + + + pdf + application/pdf + + + pfa + application/x-font-type1 + + + pfb + application/x-font-type1 + + + pfm + application/x-font-type1 + + + pfr + application/font-tdpfr + + + pfx + application/x-pkcs12 + + + pgm + image/x-portable-graymap + + + pgn + application/x-chess-pgn + + + pgp + application/pgp-encrypted + + + pic + image/pict + + + pict + image/pict + + + pkg + application/octet-stream + + + pki + application/pkixcmp + + + pkipath + application/pkix-pkipath + + + plb + application/vnd.3gpp.pic-bw-large + + + plc + application/vnd.mobius.plc + + + plf + application/vnd.pocketlearn + + + pls + audio/x-scpls + + + pml + application/vnd.ctc-posml + + + png + image/png + + + pnm + image/x-portable-anymap + + + pnt + image/x-macpaint + + + portpkg + application/vnd.macports.portpkg + + + pot + application/vnd.ms-powerpoint + + + potm + application/vnd.ms-powerpoint.template.macroenabled.12 + + + potx + application/vnd.openxmlformats-officedocument.presentationml.template + + + ppam + application/vnd.ms-powerpoint.addin.macroenabled.12 + + + ppd + application/vnd.cups-ppd + + + ppm + image/x-portable-pixmap + + + pps + application/vnd.ms-powerpoint + + + ppsm + application/vnd.ms-powerpoint.slideshow.macroenabled.12 + + + ppsx + application/vnd.openxmlformats-officedocument.presentationml.slideshow + + + ppt + application/vnd.ms-powerpoint + + + pptm + application/vnd.ms-powerpoint.presentation.macroenabled.12 + + + pptx + application/vnd.openxmlformats-officedocument.presentationml.presentation + + + pqa + application/vnd.palm + + + prc + application/x-mobipocket-ebook + + + pre + application/vnd.lotus-freelance + + + prf + application/pics-rules + + + ps + application/postscript + + + psb + application/vnd.3gpp.pic-bw-small + + + psd + image/vnd.adobe.photoshop + + + psf + application/x-font-linux-psf + + + pskcxml + application/pskc+xml + + + ptid + application/vnd.pvi.ptid1 + + + pub + application/x-mspublisher + + + pvb + application/vnd.3gpp.pic-bw-var + + + pwn + application/vnd.3m.post-it-notes + + + pya + audio/vnd.ms-playready.media.pya + + + pyv + video/vnd.ms-playready.media.pyv + + + qam + application/vnd.epson.quickanime + + + qbo + application/vnd.intu.qbo + + + qfx + application/vnd.intu.qfx + + + qps + application/vnd.publishare-delta-tree + + + qt + video/quicktime + + + qti + image/x-quicktime + + + qtif + image/x-quicktime + + + qwd + application/vnd.quark.quarkxpress + + + qwt + application/vnd.quark.quarkxpress + + + qxb + application/vnd.quark.quarkxpress + + + qxd + application/vnd.quark.quarkxpress + + + qxl + application/vnd.quark.quarkxpress + + + qxt + application/vnd.quark.quarkxpress + + + ra + audio/x-pn-realaudio + + + ram + audio/x-pn-realaudio + + + rar + application/x-rar-compressed + + + ras + image/x-cmu-raster + + + rcprofile + application/vnd.ipunplugged.rcprofile + + + rdf + application/rdf+xml + + + rdz + application/vnd.data-vision.rdz + + + rep + application/vnd.businessobjects + + + res + application/x-dtbresource+xml + + + rgb + image/x-rgb + + + rif + application/reginfo+xml + + + rip + audio/vnd.rip + + + ris + application/x-research-info-systems + + + rl + application/resource-lists+xml + + + rlc + image/vnd.fujixerox.edmics-rlc + + + rld + application/resource-lists-diff+xml + + + rm + application/vnd.rn-realmedia + + + rmi + audio/midi + + + rmp + audio/x-pn-realaudio-plugin + + + rms + application/vnd.jcp.javame.midlet-rms + + + rmvb + application/vnd.rn-realmedia-vbr + + + rnc + application/relax-ng-compact-syntax + + + roa + application/rpki-roa + + + roff + text/troff + + + rp9 + application/vnd.cloanto.rp9 + + + rpss + application/vnd.nokia.radio-presets + + + rpst + application/vnd.nokia.radio-preset + + + rq + application/sparql-query + + + rs + application/rls-services+xml + + + rsd + application/rsd+xml + + + rss + application/rss+xml + + + rtf + application/rtf + + + rtx + text/richtext + + + s + text/x-asm + + + s3m + audio/s3m + + + saf + application/vnd.yamaha.smaf-audio + + + sbml + application/sbml+xml + + + sc + application/vnd.ibm.secure-container + + + scd + application/x-msschedule + + + scm + application/vnd.lotus-screencam + + + scq + application/scvp-cv-request + + + scs + application/scvp-cv-response + + + scurl + text/vnd.curl.scurl + + + sda + application/vnd.stardivision.draw + + + sdc + application/vnd.stardivision.calc + + + sdd + application/vnd.stardivision.impress + + + sdkd + application/vnd.solent.sdkm+xml + + + sdkm + application/vnd.solent.sdkm+xml + + + sdp + application/sdp + + + sdw + application/vnd.stardivision.writer + + + see + application/vnd.seemail + + + seed + application/vnd.fdsn.seed + + + sema + application/vnd.sema + + + semd + application/vnd.semd + + + semf + application/vnd.semf + + + ser + application/java-serialized-object + + + setpay + application/set-payment-initiation + + + setreg + application/set-registration-initiation + + + sfd-hdstx + application/vnd.hydrostatix.sof-data + + + sfs + application/vnd.spotfire.sfs + + + sfv + text/x-sfv + + + sgi + image/sgi + + + sgl + application/vnd.stardivision.writer-global + + + sgm + text/sgml + + + sgml + text/sgml + + + sh + application/x-sh + + + shar + application/x-shar + + + shf + application/shf+xml + + + + sid + image/x-mrsid-image + + + sig + application/pgp-signature + + + sil + audio/silk + + + silo + model/mesh + + + sis + application/vnd.symbian.install + + + sisx + application/vnd.symbian.install + + + sit + application/x-stuffit + + + sitx + application/x-stuffitx + + + skd + application/vnd.koan + + + skm + application/vnd.koan + + + skp + application/vnd.koan + + + skt + application/vnd.koan + + + sldm + application/vnd.ms-powerpoint.slide.macroenabled.12 + + + sldx + application/vnd.openxmlformats-officedocument.presentationml.slide + + + slt + application/vnd.epson.salt + + + sm + application/vnd.stepmania.stepchart + + + smf + application/vnd.stardivision.math + + + smi + application/smil+xml + + + smil + application/smil+xml + + + smv + video/x-smv + + + smzip + application/vnd.stepmania.package + + + snd + audio/basic + + + snf + application/x-font-snf + + + so + application/octet-stream + + + spc + application/x-pkcs7-certificates + + + spf + application/vnd.yamaha.smaf-phrase + + + spl + application/x-futuresplash + + + spot + text/vnd.in3d.spot + + + spp + application/scvp-vp-response + + + spq + application/scvp-vp-request + + + spx + audio/ogg + + + sql + application/x-sql + + + src + application/x-wais-source + + + srt + application/x-subrip + + + sru + application/sru+xml + + + srx + application/sparql-results+xml + + + ssdl + application/ssdl+xml + + + sse + application/vnd.kodak-descriptor + + + ssf + application/vnd.epson.ssf + + + ssml + application/ssml+xml + + + st + application/vnd.sailingtracker.track + + + stc + application/vnd.sun.xml.calc.template + + + std + application/vnd.sun.xml.draw.template + + + stf + application/vnd.wt.stf + + + sti + application/vnd.sun.xml.impress.template + + + stk + application/hyperstudio + + + stl + application/vnd.ms-pki.stl + + + str + application/vnd.pg.format + + + stw + application/vnd.sun.xml.writer.template + + + sub + text/vnd.dvb.subtitle + + + sus + application/vnd.sus-calendar + + + susp + application/vnd.sus-calendar + + + sv4cpio + application/x-sv4cpio + + + sv4crc + application/x-sv4crc + + + svc + application/vnd.dvb.service + + + svd + application/vnd.svd + + + svg + image/svg+xml + + + svgz + image/svg+xml + + + swa + application/x-director + + + swf + application/x-shockwave-flash + + + swi + application/vnd.aristanetworks.swi + + + sxc + application/vnd.sun.xml.calc + + + sxd + application/vnd.sun.xml.draw + + + sxg + application/vnd.sun.xml.writer.global + + + sxi + application/vnd.sun.xml.impress + + + sxm + application/vnd.sun.xml.math + + + sxw + application/vnd.sun.xml.writer + + + t + text/troff + + + t3 + application/x-t3vm-image + + + taglet + application/vnd.mynfc + + + tao + application/vnd.tao.intent-module-archive + + + tar + application/x-tar + + + tcap + application/vnd.3gpp2.tcap + + + tcl + application/x-tcl + + + teacher + application/vnd.smart.teacher + + + tei + application/tei+xml + + + teicorpus + application/tei+xml + + + tex + application/x-tex + + + texi + application/x-texinfo + + + texinfo + application/x-texinfo + + + text + text/plain + + + tfi + application/thraud+xml + + + tfm + application/x-tex-tfm + + + tga + image/x-tga + + + thmx + application/vnd.ms-officetheme + + + tif + image/tiff + + + tiff + image/tiff + + + tmo + application/vnd.tmobile-livetv + + + torrent + application/x-bittorrent + + + tpl + application/vnd.groove-tool-template + + + tpt + application/vnd.trid.tpt + + + tr + text/troff + + + tra + application/vnd.trueapp + + + trm + application/x-msterminal + + + tsd + application/timestamped-data + + + tsv + text/tab-separated-values + + + ttc + font/collection + + + ttf + font/ttf + + + ttl + text/turtle + + + twd + application/vnd.simtech-mindmapper + + + twds + application/vnd.simtech-mindmapper + + + txd + application/vnd.genomatix.tuxedo + + + txf + application/vnd.mobius.txf + + + txt + text/plain + + + u32 + application/x-authorware-bin + + + udeb + application/x-debian-package + + + ufd + application/vnd.ufdl + + + ufdl + application/vnd.ufdl + + + ulw + audio/basic + + + ulx + application/x-glulx + + + umj + application/vnd.umajin + + + unityweb + application/vnd.unity + + + uoml + application/vnd.uoml+xml + + + uri + text/uri-list + + + uris + text/uri-list + + + urls + text/uri-list + + + ustar + application/x-ustar + + + utz + application/vnd.uiq.theme + + + uu + text/x-uuencode + + + uva + audio/vnd.dece.audio + + + uvd + application/vnd.dece.data + + + uvf + application/vnd.dece.data + + + uvg + image/vnd.dece.graphic + + + uvh + video/vnd.dece.hd + + + uvi + image/vnd.dece.graphic + + + uvm + video/vnd.dece.mobile + + + uvp + video/vnd.dece.pd + + + uvs + video/vnd.dece.sd + + + uvt + application/vnd.dece.ttml+xml + + + uvu + video/vnd.uvvu.mp4 + + + uvv + video/vnd.dece.video + + + uvva + audio/vnd.dece.audio + + + uvvd + application/vnd.dece.data + + + uvvf + application/vnd.dece.data + + + uvvg + image/vnd.dece.graphic + + + uvvh + video/vnd.dece.hd + + + uvvi + image/vnd.dece.graphic + + + uvvm + video/vnd.dece.mobile + + + uvvp + video/vnd.dece.pd + + + uvvs + video/vnd.dece.sd + + + uvvt + application/vnd.dece.ttml+xml + + + uvvu + video/vnd.uvvu.mp4 + + + uvvv + video/vnd.dece.video + + + uvvx + application/vnd.dece.unspecified + + + uvvz + application/vnd.dece.zip + + + uvx + application/vnd.dece.unspecified + + + uvz + application/vnd.dece.zip + + + vcard + text/vcard + + + vcd + application/x-cdlink + + + vcf + text/x-vcard + + + vcg + application/vnd.groove-vcard + + + vcs + text/x-vcalendar + + + vcx + application/vnd.vcx + + + vis + application/vnd.visionary + + + viv + video/vnd.vivo + + + vob + video/x-ms-vob + + + vor + application/vnd.stardivision.writer + + + vox + application/x-authorware-bin + + + vrml + model/vrml + + + vsd + application/vnd.visio + + + vsf + application/vnd.vsf + + + vss + application/vnd.visio + + + vst + application/vnd.visio + + + vsw + application/vnd.visio + + + vtu + model/vnd.vtu + + + vxml + application/voicexml+xml + + + w3d + application/x-director + + + wad + application/x-doom + + + wasm + application/wasm + + + wav + audio/x-wav + + + wax + audio/x-ms-wax + + + + wbmp + image/vnd.wap.wbmp + + + wbs + application/vnd.criticaltools.wbs+xml + + + wbxml + application/vnd.wap.wbxml + + + wcm + application/vnd.ms-works + + + wdb + application/vnd.ms-works + + + wdp + image/vnd.ms-photo + + + weba + audio/webm + + + webm + video/webm + + + webp + image/webp + + + wg + application/vnd.pmi.widget + + + wgt + application/widget + + + wks + application/vnd.ms-works + + + wm + video/x-ms-wm + + + wma + audio/x-ms-wma + + + wmd + application/x-ms-wmd + + + wmf + application/x-msmetafile + + + + wml + text/vnd.wap.wml + + + + wmlc + application/vnd.wap.wmlc + + + + wmls + text/vnd.wap.wmlscript + + + + wmlsc + application/vnd.wap.wmlscriptc + + + wmv + video/x-ms-wmv + + + wmx + video/x-ms-wmx + + + wmz + application/x-msmetafile + + + woff + font/woff + + + woff2 + font/woff2 + + + wpd + application/vnd.wordperfect + + + wpl + application/vnd.ms-wpl + + + wps + application/vnd.ms-works + + + wqd + application/vnd.wqd + + + wri + application/x-mswrite + + + wrl + model/vrml + + + wsdl + application/wsdl+xml + + + wspolicy + application/wspolicy+xml + + + wtb + application/vnd.webturbo + + + wvx + video/x-ms-wvx + + + x32 + application/x-authorware-bin + + + x3d + model/x3d+xml + + + x3db + model/x3d+binary + + + x3dbz + model/x3d+binary + + + x3dv + model/x3d+vrml + + + x3dvz + model/x3d+vrml + + + x3dz + model/x3d+xml + + + xaml + application/xaml+xml + + + xap + application/x-silverlight-app + + + xar + application/vnd.xara + + + xbap + application/x-ms-xbap + + + xbd + application/vnd.fujixerox.docuworks.binder + + + xbm + image/x-xbitmap + + + xdf + application/xcap-diff+xml + + + xdm + application/vnd.syncml.dm+xml + + + xdp + application/vnd.adobe.xdp+xml + + + xdssc + application/dssc+xml + + + xdw + application/vnd.fujixerox.docuworks + + + xenc + application/xenc+xml + + + xer + application/patch-ops-error+xml + + + xfdf + application/vnd.adobe.xfdf + + + xfdl + application/vnd.xfdl + + + xht + application/xhtml+xml + + + xhtml + application/xhtml+xml + + + xhvml + application/xv+xml + + + xif + image/vnd.xiff + + + xla + application/vnd.ms-excel + + + xlam + application/vnd.ms-excel.addin.macroenabled.12 + + + xlc + application/vnd.ms-excel + + + xlf + application/x-xliff+xml + + + xlm + application/vnd.ms-excel + + + xls + application/vnd.ms-excel + + + xlsb + application/vnd.ms-excel.sheet.binary.macroenabled.12 + + + xlsm + application/vnd.ms-excel.sheet.macroenabled.12 + + + xlsx + application/vnd.openxmlformats-officedocument.spreadsheetml.sheet + + + xlt + application/vnd.ms-excel + + + xltm + application/vnd.ms-excel.template.macroenabled.12 + + + xltx + application/vnd.openxmlformats-officedocument.spreadsheetml.template + + + xlw + application/vnd.ms-excel + + + xm + audio/xm + + + xml + application/xml + + + xo + application/vnd.olpc-sugar + + + xop + application/xop+xml + + + xpi + application/x-xpinstall + + + xpl + application/xproc+xml + + + xpm + image/x-xpixmap + + + xpr + application/vnd.is-xpr + + + xps + application/vnd.ms-xpsdocument + + + xpw + application/vnd.intercon.formnet + + + xpx + application/vnd.intercon.formnet + + + xsl + application/xml + + + xslt + application/xslt+xml + + + xsm + application/vnd.syncml+xml + + + xspf + application/xspf+xml + + + xul + application/vnd.mozilla.xul+xml + + + xvm + application/xv+xml + + + xvml + application/xv+xml + + + xwd + image/x-xwindowdump + + + xyz + chemical/x-xyz + + + xz + application/x-xz + + + yang + application/yang + + + yin + application/yin+xml + + + z + application/x-compress + + + z1 + application/x-zmachine + + + z2 + application/x-zmachine + + + z3 + application/x-zmachine + + + z4 + application/x-zmachine + + + z5 + application/x-zmachine + + + z6 + application/x-zmachine + + + z7 + application/x-zmachine + + + z8 + application/x-zmachine + + + zaz + application/vnd.zzazz.deck+xml + + + zip + application/zip + + + zir + application/vnd.zul + + + zirz + application/vnd.zul + + + zmm + application/vnd.handheld-entertainment+xml + + + + + + + + + + + + + + + + index.html + index.htm + index.jsp + + \ No newline at end of file