From e5160ddeafe8bf0d1155c5c9b31b7b4070352a60 Mon Sep 17 00:00:00 2001 From: Tobias Klaus Date: Thu, 10 Apr 2025 22:53:48 +0200 Subject: [PATCH] inital --- rewrite_apache_conf.py | 19 +++++++++++++++++++ testdata/site.conf | 35 +++++++++++++++++++++++++++++++++++ testdata/test.conf | 25 +++++++++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100755 rewrite_apache_conf.py create mode 100644 testdata/site.conf create mode 100644 testdata/test.conf diff --git a/rewrite_apache_conf.py b/rewrite_apache_conf.py new file mode 100755 index 0000000..66b0a3e --- /dev/null +++ b/rewrite_apache_conf.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python3 + +import re +import sys +from pathlib import Path + + +INCLUDE_MATCH = re.compile(r"\s*include\s+(.*)\s*") +SERVERNAME_MATCH = re.compile(r"\s*ServerName\s+(.*)\s*") +SERVERALIAS_MATCH = re.compile(r"\s*ServerAlias\s+(.*)\s*") + +with Path(sys.argv[1]).open("r") as original: + lines = original.readlines() + includes = set(x[1] for x in map(INCLUDE_MATCH.match, lines) if x) + server_name = set(x[1] for x in map(SERVERNAME_MATCH.match, lines) if x) + server_alias = set(x[1] for x in map(SERVERALIAS_MATCH.match, lines) if x) + print(f"includes: {includes}") + print(f"server_name: {server_name}") + print(f"server_alias: {server_alias}") diff --git a/testdata/site.conf b/testdata/site.conf new file mode 100644 index 0000000..e5f30d6 --- /dev/null +++ b/testdata/site.conf @@ -0,0 +1,35 @@ + + ServerName site.de + ServerAlias www.site.de + ServerAdmin webmaster@site.de + + include /etc/apache2/vhosts.d/site.include + + # This checks to make sure the connection is not already HTTPS +# RewriteEngine on + RewriteCond %{HTTPS} off + RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L] + + + + + + + SSLEngine on + SSLCertificateFile /etc/dehydrated/certs/site.de/fullchain.pem + SSLCertificateKeyFile /etc/dehydrated/certs/site.de/privkey.pem + SSLUseStapling On + + ServerName site.de + ServerAlias www.site.de + ServerAdmin webmaster@site.de + + Header always set Strict-Transport-Security "max-age=31536000;" + + include /etc/apache2/vhosts.d/site.de.include + + + + + + diff --git a/testdata/test.conf b/testdata/test.conf new file mode 100644 index 0000000..b2a2136 --- /dev/null +++ b/testdata/test.conf @@ -0,0 +1,25 @@ + + include /etc/apache2/vhosts.d/site.de.include + RewriteEngine On +# Redirect / https://%{HTTP_HOST}/ + RewriteRule ^.*$ https://site.de%{REQUEST_URI} [L,R=permanent] + + + + + + SSLEngine on + + SSLCertificateFile /etc/dehydrated/certs/site.de/fullchain.pem + SSLCertificateKeyFile /etc/dehydrated/certs/site.de/privkey.pem + + SSLUseStapling Off + Header always set Strict-Transport-Security "max-age=31536000;" + + + + include /etc/apache2/vhosts.d/site.de.include + + + +