Seite 1 von 1

Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Di 26. Dez 2017, 13:13
von KasAn
Hallo Zusammen,

ich habe da ein kleines Problemchen.

Ich habe die Seite eines Kunden auf HTTPS umgestellt.
Wenn ich jetzt,
http://unterverzeichnis.domain.de
oder
http://www.unterverzeichnis.domain.de
oder
https://www.unterverzeichnis.domain.de

eingeben wird, wird nicht nicht auf die HTTPS://unterverzeichnis.domain.de umgeleitet.

Also alle Eingaben sollen auf: https://unterverzeichnis.domain.de umleiten.
Das ist der Plan.


.htaccess sieht so aus:


<IfModule mod_rewrite.c>
RewriteEngine On

#RewriteBase /

#Umleitung nach www.

#RewriteCond %{HTTP_HOST} !^www\. [NC]
#RewriteCond %{HTTP_HOST} !^$
#RewriteRule ^(.*)$ https://unterverzeichnis.domain.de/$1 [R=301,L]

#Ende Umleitung nach www.

# automatische IP Sperrung bei zu hoher Zahl von Zugriffen pro Minute
# Der Inhalt zwischen dem AUTO_IP_BLOCK_START und AUTO_IP_BLOCK_END Kommentar wird automatisch generiert, wenn das Auto-IP-Block Modul installiert ist.
###AUTO_IP_BLOCK_START###
order allow,deny
allow from all
###AUTO_IP_BLOCK_END###

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ bootstrap.php [NC,L]

</IfModule>

---

Die config.inc.php so:

// Hauptsprache auswaehlen
if(!isset($_SESSION["langu"])) { $_SESSION["langu"] = "de"; }
ini_set("display_errors", 0);
error_reporting(E_ALL ^ (E_NOTICE));
ini_set("default_charset", "");


define('SSL_CHECKOUT', true);

if((strstr($_SERVER['SCRIPT_NAME'], 'bestellen/index.php') || strstr($_SERVER['SCRIPT_NAME'], 'bestellen/auftragsbestaetigung.php')) && SSL_CHECKOUT || $_SERVER['HTTPS'])
define('PROTOCOL', 'https');
else
define('PROTOCOL', 'https');

define("URLPFAD", PROTOCOL . "://unterverzeichnis.domain.de/");
if(SSL_CHECKOUT)
define("URLPFAD_SSL", "https://unterverzeichnis.domain.de/");
else
define("URLPFAD_SSL", "https:/unterverzeichnis.domain.de/");
define("URLPFAD_NOSSL", "https://unterverzeichnis.domain.de/");
define("DATEIPFAD", "/kunden/homepages/21/d355555558/htdocs/shop/");
define("IMAGEPFAD", PROTOCOL . ":/unterverzeichnis.domain.de/images/");

define("ADMINPFAD", "/kunden/homepages/21/d588656566/htdocs/shop/admin/admin_neu/");
define("ADMINURLPFAD", PROTOCOL . "://unterverzeichnis.domain.de/admin/admin_neu/");

Hat jemand einen Tip?
Danke für Antworten!

Re: Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Mi 27. Dez 2017, 08:51
von mmaass

Re: Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Mi 27. Dez 2017, 12:20
von KasAn
Hallo Herr Maas, Ihre Tips habe ich eingehalten.
Da ich einen zweiten Shop bearbeite, habe ich dort die (htaccess und die config.inc.php) genommen und die Domaineintragungen geändert.
Sollte ja dann auch gleich laufen. Gleiche Version und gleiche Daten.

Aber, wenn ich www.shop.prunkundprotzi.de oder http://www.shop.shop.prunkundprotzi.de im Browser eingebe, wird zwar die Seite geladen, aber ich möchte, bei diesen Eingaben, direkt auf die HTTPS oder gesicherte Seite weiterleiten.

Wie müßte die .htaccess Datei aussehen?



<IfModule mod_rewrite.c>
RewriteEngine On

#RewriteBase/

#Umleitung nach www.

#RewriteCond %{HTTP_HOST} !^www\. [NC]
#RewriteCond %{HTTP_HOST} !^$
#RewriteRule ^(.*)$ https://shop.prunkundprotzi.de/$1 [R=301,L]

#Ende Umleitung nach www.

# automatische IP Sperrung bei zu hoher Zahl von Zugriffen pro Minute
# Der Inhalt zwischen dem AUTO_IP_BLOCK_START und AUTO_IP_BLOCK_END Kommentar wird automatisch generiert, wenn das Auto-IP-Block Modul installiert ist.
###AUTO_IP_BLOCK_START###
order allow,deny
allow from all
###AUTO_IP_BLOCK_END###

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ bootstrap.php [NC,L]

</IfModule>

Ihr Tip auf der Seite des Links:

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Aber, wenn ich dort die Rauten wegmache, wird der Shop nicht geladen.

Danke für Ihre Hilfe!

Re: Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Mi 27. Dez 2017, 12:27
von mmaass
Du müsstest die # auch nicht weg nehmen, sondern eher das durch die im Blog stehenden Zeilen ersetzen:

Also das so rein:

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Wenn das nicht funktioniert, dann müsste man nach schauen, ob es da irgendwelche Weiterleitungen gibt oder Konfigurationen, die stören. Aber das kann ich aus der Ferne leider nicht diagnostizieren.

Re: Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Mi 27. Dez 2017, 18:19
von KasAn
Sehr geehrter Herr Maas,

leider hat das so nicht geklappt.

Mit diesem Code unten, funktioniert es.

Ob man HTTP://www.domain.de oder nur HTTP://domain.de oder www.domain.de
eingeben und man wird direkt auf die angegebene Domain weitergeleitet.

Code hier für alle, die das Gleiche wollen.


<IfModule mod_rewrite.c>
RewriteEngine On

#RewriteBase /

#Umleitung nach www.


RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://domain.de/index.php/$1 [R=301,L]

#Ende Umleitung nach www.

# automatische IP Sperrung bei zu hoher Zahl von Zugriffen pro Minute
# Der Inhalt zwischen dem AUTO_IP_BLOCK_START und AUTO_IP_BLOCK_END Kommentar wird automatisch generiert, wenn das Auto-IP-Block Modul installiert ist.
###AUTO_IP_BLOCK_START###
order allow,deny
allow from all
###AUTO_IP_BLOCK_END###

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ bootstrap.php [NC,L]

</IfModule>

Re: Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Mi 27. Dez 2017, 18:41
von KasAn
FEHLER - so ist es richtig!
.htaccess


<IfModule mod_rewrite.c>
RewriteEngine On

#RewriteBase /

#Umleitung nach www.


RewriteCond %{SERVER_PORT} !=443
RewriteRule ^(.*)$ https://domain.de/$1 [R=301,L]

#Ende Umleitung nach www.

# automatische IP Sperrung bei zu hoher Zahl von Zugriffen pro Minute
# Der Inhalt zwischen dem AUTO_IP_BLOCK_START und AUTO_IP_BLOCK_END Kommentar wird automatisch generiert, wenn das Auto-IP-Block Modul installiert ist.
###AUTO_IP_BLOCK_START###
order allow,deny
allow from all
###AUTO_IP_BLOCK_END###

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ bootstrap.php [NC,L]

</IfModule>

Re: Umleitung von HTTP auf HTTPS mit und ohne www.

BeitragVerfasst: Do 28. Dez 2017, 08:45
von mmaass
Ja, so kann man es auch machen.