summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWojtek Kosior <koszko@koszko.org>2022-04-19 19:35:21 +0200
committerWojtek Kosior <koszko@koszko.org>2022-04-19 19:35:21 +0200
commitea6afb92048c835752fe1c72ad52f424e2df88a8 (patch)
tree180bf0cd8a7d0f38fd515d83d799ba60e5bd6a10
parentb95983be4676117636b7c4459faf0857e79dd37d (diff)
downloadhaketilo-hydrilla-ea6afb92048c835752fe1c72ad52f424e2df88a8.tar.gz
haketilo-hydrilla-ea6afb92048c835752fe1c72ad52f424e2df88a8.zip
add sample apache2 config files
-rw-r--r--doc/examples/hydrilla.example.com.conf49
-rw-r--r--doc/examples/hydrilla.example.com.tls.conf65
2 files changed, 114 insertions, 0 deletions
diff --git a/doc/examples/hydrilla.example.com.conf b/doc/examples/hydrilla.example.com.conf
new file mode 100644
index 0000000..0d94c05
--- /dev/null
+++ b/doc/examples/hydrilla.example.com.conf
@@ -0,0 +1,49 @@
+# SPDX-License-Identifier: CC0-1.0
+
+# Sample Apache2 configuration file for Hydrilla server (over unencrypted HTTP).
+#
+# Copyright (C) 2022 Wojtek Kosior
+
+
+# Please adapt this file according to your needs can place it file under
+# Apache2's available site configs directory which will be
+# /etc/apache2/sites-available/ or similar. Then, enable it using the following
+# command:
+# a2ensite hydrilla.example.com
+# The new configuration will only take effect after you restart/reload Apache2
+# daemon.
+
+# Keep in mind that due to some external limitations Haketilo will not connect
+# to HTTP Hydrilla servers running elsewhere than localhost. To get a working
+# public Hydrilla server you should obtain a TLS certificate and use the
+# attached hydrilla.example.com.tls.conf file instead of this one.
+
+# This configuration file assumes Hydrilla is installed under Python's default
+# load path and that the attached hydrilla.wsgi sample script has been saved as
+# /var/lib/hydrilla/wsgi/hydrilla.wsgi
+
+<VirtualHost *:80>
+ ServerName hydrilla.example.com
+ ServerAdmin admin@example.com
+
+ DocumentRoot /var/lib/hydrilla/malcontent_dir
+
+ <Directory /var/lib/hydrilla/malcontent_dir >
+ Require all granted
+ </Directory>
+
+ <Directory ~ "^/var/lib/hydrilla/malcontent_dir/(resource|mapping)/" >
+ ForceType application/json
+ </Directory>
+
+ WSGIScriptReloading On
+
+ <Directory /var/lib/hydrilla/wsgi >
+ Require all granted
+ </Directory>
+
+ WSGIScriptAliasMatch "^/((resource|mapping)/[^/]+[.]json|query)$" "/var/lib/hydrilla/wsgi/hydrilla.wsgi/$1"
+
+ ErrorLog ${APACHE_LOG_DIR}/error.log
+ CustomLog ${APACHE_LOG_DIR}/access.log combined
+</VirtualHost>
diff --git a/doc/examples/hydrilla.example.com.tls.conf b/doc/examples/hydrilla.example.com.tls.conf
new file mode 100644
index 0000000..5f14554
--- /dev/null
+++ b/doc/examples/hydrilla.example.com.tls.conf
@@ -0,0 +1,65 @@
+# SPDX-License-Identifier: CC0-1.0
+
+# Sample Apache2 configuration file for Hydrilla server (over HTTPS).
+#
+# Copyright (C) 2022 Wojtek Kosior
+
+
+# Please adapt this file according to your needs can place it file under
+# Apache2's available site configs directory which will be
+# /etc/apache2/sites-available/ or similar. Then, enable it using the following
+# command:
+# a2ensite hydrilla.example.com.tls
+# The new configuration will only take effect after you restart/reload Apache2
+# daemon.
+
+# The following configuration enables TLS encryption. If you want to run a local
+# Hydrilla server utilizing plain HTTP, use the attached
+# hydrilla.example.com.conf file instead of this one or run a standalone
+# development server using the hydrilla command.
+
+# This configuration file assumes Hydrilla is installed under Python's default
+# load path and that the attached hydrilla.wsgi sample script has been saved as
+# /var/lib/hydrilla/wsgi/hydrilla.wsgi
+
+<VirtualHost *:80>
+ ServerName hydrilla.example.com
+
+ Redirect permanent / https://hydrilla.example.com/
+
+ ErrorLog ${APACHE_LOG_DIR}/error.log
+ CustomLog ${APACHE_LOG_DIR}/access.log combined
+</VirtualHost>
+
+<IfModule mod_ssl.c>
+ <VirtualHost _default_:443>
+ ServerName hydrilla.example.com
+ ServerAdmin admin@example.com
+
+ DocumentRoot /var/lib/hydrilla/malcontent_dir
+
+ <Directory /var/lib/hydrilla/malcontent_dir >
+ Require all granted
+ </Directory>
+
+ <Directory ~ "^/var/lib/hydrilla/malcontent_dir/(resource|mapping)/" >
+ ForceType application/json
+ </Directory>
+
+ WSGIScriptReloading On
+
+ <Directory /var/lib/hydrilla/wsgi >
+ Require all granted
+ </Directory>
+
+ WSGIScriptAliasMatch "^/((resource|mapping)/[^/]+[.]json|query)$" "/var/lib/hydrilla/wsgi/hydrilla.wsgi/$1"
+
+ ErrorLog ${APACHE_LOG_DIR}/error.log
+ CustomLog ${APACHE_LOG_DIR}/access.log combined
+
+ SSLEngine on
+ SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
+ SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
+ SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem
+ </VirtualHost>
+</IfModule>