2017-11-02 1 views
1

Ich habe mehrere Lösungen versucht, aber keiner von ihnen scheint zu funktionieren. Ich habe eine Laravel Anwendung (öffentliche Ordner entfernt wird) und ich wollte hier um den Benutzer zu HTTPS und eine nicht-www-Version meiner Webseite umleiten ist ein Beispiel für die Aktion iLaravel - htaccess Umleitung von www zu nicht-www und von http zu https mit Anfrage uri geht zu index.php

  1. Redirect http://example.com erreichen wollten https://example.com
  2. Redirect http://www.example.com-https://example.com
  3. Redirect https://www.example.com zu https://example.com

konnte ich erreichen, dass die Folge mit ing-Code auf .htaccess

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www\.addisprice.com$ [NC] 
RewriteRule (.*) https://addisprice.com [R=301,L] 

Jetzt, da die Website viele Links hat, wollte ich die Benutzer umgeleitet werden, ohne Text nach der Domäne zu verlieren. Hier ist ein Beispiel

  1. Redirect https://www.example.com/electronics/laptops/hp zu https://example.com/electronics/laptops/hp

ich viele Variationen mit $ und request_uri versucht, aber sie https://example.com/index.php halten umleitet. Nach der Suche hier nach Antworten, ich das letzte, was sah aus wie etwas, versuchte, die das gleiche Ergebnis ergab

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 
RewriteRule^https://example.com%1%{REQUEST_URI} [L,R=301,NE] 

Dieser keinen Verkehr umgeleitet werden scheint, die

So wie kann ich Verkehr als https://www.example.com/string1/string2/string3-https://example.com/index.php kommt umleiten wie beabsichtigt und was eine bessere Praxis ist. Schreibe zwei Regeln oder kombiniere die Regeln mit If-Anweisungen.

Ich möchte htaccess nur Methoden, keine Middleware verwenden.

Antwort

0

Um www Anfragen an nicht-www ohne den Pfad zu verlieren oder das Query-String Dies ist das richtige Format zu umleiten:

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

Wenn Ihre Website auf einem Server ohne Reverse-Proxy ist, können Sie einfach nicht umleiten -HTTPS Anforderungen an HTTPS, wie folgend:

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

im Fall gibt es einen Reverse-Proxy oder ein Load-Balancer, um die weiter~~POS=TRUNC Header überprüfen müssen, abhängig von der Proxy-Konfiguration (. zB X-Forwared-Proto)

+0

der erste umleitet zu https://example.com/index.php – user3659497

0

versuchen, diese ein

# Redirect from http to https 

    RewriteEngine on 
    # Redirect to HTTPS 
    RewriteCond %{HTTPS} off 
    RewriteCond %{HTTP:X-Forwarded-Proto} !https 
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

# (http://www.example.com/foo will be redirected to http://example.com/foo) 

    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
    RewriteRule^http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301] 

# to redirect index.php to the root 

RewriteCond %{THE_REQUEST} ^.*/index\.php 
RewriteRule ^(.*)index.php$ /$1 [R=301,L] 
+0

Ich habe Ihren Vorschlag verwendet, aber ich werde auf example.com/index.php (https) umgeleitet. – user3659497

0

hatte ich das gleiche Problem

Sie diesen Code nach

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

, wenn Sie diese setzen oben auf .htaccsee Datei setzen sollte nach

# Handle Front Controller... 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 

Ihre Seite redirect zu yourdomain.com/index.php

0

hatte ich das gleiche Problem

Sie diesen Code nach

# Handle Front Controller... 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 

nach

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

, wenn Sie diese setzen oben auf .htaccsee Datei setzen sollten Ihre Seite umleiten zu yourdomain.com/index.php

Verwandte Themen