HTTP zu HTTPS Redirect

Internet Information Services

Im IIS (Windows) werden HTTP/HTTPS Redirects in der Datei web.config konfiguriert.
Wird die komplette Site umgeleitet, ist die entsprechende Datei im Root-Ordner der Site anzupassen. Wenn nur ein Teil der Site umgeleitet werden soll, ist die entsprechende Datei des Site Unterordners anzupassen.

Folgende Einträge müssen vorgenommen werden:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
  <rules>
    <rule name="Redirect HTTP to HTTPS" stopProcessing="true">
    <match url="(.*)" />
    <conditions>
      <add input="{HTTPS}" pattern="^OFF$" ignoreCase="true" />
    </conditions>
    <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
    </rule>
  </rules>
</rewrite>
</system.webServer>
</configuration>

Sollte nach der Änderung im Browser eine too many redirects Fehlermeldung angezeigt werden, ist im <action>-Tag der Wert url="https://{HTTP_HOST}/{R:1}" mit dem Wert der tatsächlichen Domain (z.B.: url="https://www.mydomain.com/{R:1}") zu ersetzen.

Apache

In Apache (Linux/Windows) werden HTTP/HTTPS Redirects am Einfachsten in der Datei .htaccess konfiguriert.
Wird die komplette Site umgeleitet, ist die entsprechende Datei im Root-Ordner der Site anzupassen. Wenn nur ein Teil der Site umgeleitet werden soll, ist die entsprechende Datei des Site Unterordners anzupassen.

Folgende Einträge müssen vorgenommen werden:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Enthält die Datei .htaccess bereits den Eintrag RewriteEngine On, sind die restlichen Einträge direkt darunter einzufügen.

Nginx

Die Konfiguration des Redirects wird in der nginx.conf Datei vorgenommen.

server {
   listen 80;
   server_name <your>.<domain>;
   return 301 https://$host$request_uri;
}
server {
   listen 443 ssl;
   server_name <your>.<domain>;
   ssl_certificate /<Path-To-Certificate>/<Certificate/Chain>.crt;
   ssl_certificate_key /<Path-To-Private-Key>/<Private-Key>.pem;
}

Tomcat

Die Tomcat Konfiguration für den Redirect ist am Aufwendigsten, da gleich 2 Konfigurationsdateien angepasst werden müssen. Zum Einen die Datei $CATALINA_HOME\conf\server.xml, in der die Port Connectors angelegt werden müssen und zum Anderen die Datei $CATALINA_HOME\WEB-INF\web.xml, in der die eigentliche Redirect-Konfiguration vorgenommen wird.

$CATALINA_HOME\conf\server.xml

<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<Connector
  protocol="org.apache.coyote.http11.Http11NioProtocol"
  port="8443" maxThreads="200"
  scheme="https" secure="true" SSLEnabled="true"
  keystoreFile="<Path>\<Keystore-File>.jks" keystorePass="<Keystore-Password>"
  clientAuth="false" sslProtocol="TLS"
/>

$CATALINA_HOME\WEB-INF\web.xml

<web-app>
...
  <security-constraint>
    <web-resource-collection>
      <web-resource-name><Web-Resource></web-resource-name>
      <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
      <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
  </security-constraint>
...
</web-app>

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.