Moin zusammen,
ich hätte da mal eine Frage zu dem Modul "mod_rewrite" von Apache2 von Ubuntu 18.04.1.
Wenn ich mich in dem Verzeichnis "/etc/apache2/mods-available" umsehe, finde ich dort "*.load und *.conf" Dateien zu fast jedem Modul.
Das "mod_rewrite" Modul ist angeschalten, aber für dieses Modul gibt es keine "rewrite.conf" Datei sondern nur die "rewrite.load".
In der "vhosts.conf" habe ich für Port 80 in den Abschnitten für die jeweiligen vhosts ein redirect auf HTTPS eingebaut:
Das führt dazu, dass reguläre Port 80 Anfragen des aufgerufenen vhost auf Port 443 des zugehörigen vhost umgeleitet werden sollen.
In den Logs tauchen jedoch Dinge auf, die an Port 80 abgearbeitet werden und keine Fehler verursachen und somit keinen Eintrag in der "error.log" erzeugen. Ein redirect unterbleibt zudem.
Hier nur eines von vielen Beispielen:
Ich möchte über das "mod_rewrite" Modul solche Anfragen in nachfolgender Form "Blacklisten".
Beispiel:
Da ich mehrere VHOSTS in einer Konfigurationsdatei vereinigt habe, wäre eben genanntes Beispiel eine Horroraufgabe, da ich jeden Block, wie eben gezeigt, in jeden "vhost Abschnitt" eintragen müsste.
Mir stellen sich jetzt mehrere Fragen:
1) Ist das möglich in "/etc/apache2/mods-available" eine Datei mit dem Namen "rewrite.conf" zu erzeugen, so dass ich die "rewrite rule" zentral verwalten kann?
2) Ganz oben im Text habe ich in der "vhosts.conf" in jedem Abschnitt bereits ein redirect definiert, das Port 80 Anfragen auf Port 443 umleiten soll.
Überschreiben sich womöglich die Regeln, wenn ich wie in "1" beschrieben, die Regeln mit einer zentralen "rewrite.conf" abarbeite?
3) Die Idee habe ich im Internet gefunden und ich kann schlecht sagen, ob der Ubuntu Apache2 mit dem Anfang aus den Rewrite Regeln:
mit dem "*.c" etwas anfangen kann und ob das dringend notwendig ist.
4) Geht das überhaupt, so wie ich mir das vorstelle?
Ich hoffe, dass ich die Problematik einigermassen verständlich und nachvollziehbar dargestellt habe.
Ich danke im Voraus für eure Hilfe

ich hätte da mal eine Frage zu dem Modul "mod_rewrite" von Apache2 von Ubuntu 18.04.1.
Wenn ich mich in dem Verzeichnis "/etc/apache2/mods-available" umsehe, finde ich dort "*.load und *.conf" Dateien zu fast jedem Modul.
Das "mod_rewrite" Modul ist angeschalten, aber für dieses Modul gibt es keine "rewrite.conf" Datei sondern nur die "rewrite.load".
In der "vhosts.conf" habe ich für Port 80 in den Abschnitten für die jeweiligen vhosts ein redirect auf HTTPS eingebaut:
Code:
RewriteEngine On
RewriteCond % {HTTPS} Off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}[R301,L]
Das führt dazu, dass reguläre Port 80 Anfragen des aufgerufenen vhost auf Port 443 des zugehörigen vhost umgeleitet werden sollen.
In den Logs tauchen jedoch Dinge auf, die an Port 80 abgearbeitet werden und keine Fehler verursachen und somit keinen Eintrag in der "error.log" erzeugen. Ein redirect unterbleibt zudem.
Hier nur eines von vielen Beispielen:
Code:
server_name:80 ip.add.re.sse datum "POST /1111.php HTTP/1.1" 301 537 "-" "Mozilla 5.0 usw. usw.
Ich möchte über das "mod_rewrite" Modul solche Anfragen in nachfolgender Form "Blacklisten".
Beispiel:
Code:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{POST} ^.*(\\r|\\n|%0A|%0D).* [NC]
RewriteRule ^(.*)$ - [F,L]
</IfModule>
UND / ODER
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www\.)?.*(-|.)?1111(-|.).*$ [NC,OR]
RewriteRule ^(.*)$ - [F,L]
</IfModule>
Da ich mehrere VHOSTS in einer Konfigurationsdatei vereinigt habe, wäre eben genanntes Beispiel eine Horroraufgabe, da ich jeden Block, wie eben gezeigt, in jeden "vhost Abschnitt" eintragen müsste.
Mir stellen sich jetzt mehrere Fragen:
1) Ist das möglich in "/etc/apache2/mods-available" eine Datei mit dem Namen "rewrite.conf" zu erzeugen, so dass ich die "rewrite rule" zentral verwalten kann?
2) Ganz oben im Text habe ich in der "vhosts.conf" in jedem Abschnitt bereits ein redirect definiert, das Port 80 Anfragen auf Port 443 umleiten soll.
Überschreiben sich womöglich die Regeln, wenn ich wie in "1" beschrieben, die Regeln mit einer zentralen "rewrite.conf" abarbeite?
3) Die Idee habe ich im Internet gefunden und ich kann schlecht sagen, ob der Ubuntu Apache2 mit dem Anfang aus den Rewrite Regeln:
Code:
<IfModule mod_rewrite.c>
4) Geht das überhaupt, so wie ich mir das vorstelle?
Ich hoffe, dass ich die Problematik einigermassen verständlich und nachvollziehbar dargestellt habe.
Ich danke im Voraus für eure Hilfe