Hvad er den bedste måde at tvinge HTTPS og WWW men tillade localhost?

Hvad er den bedste måde at tvinge HTTPS og WWW men tillade localhost? [Dansk]

HTACCESS tvinger HTTPS og WWW men tillader localhost

Det er vigtigt at tvinge HTTPS og WWW af flere grunde: tjene dine besøgende tillid ved at vise forbindelsen er sikker, og hvis du bruger et underdomæne som www, holder konsistensen med dine besøgende og din rapportering på din billige web hosting f.eks.

Det kan let blive kompliceret i rapporteringsmotorer som Google Search Console at have forskellige visninger for nøjagtigt det samme sted og sider. En med sikker HTTPS-forbindelse, en uden og den ene med Web-underdomæne www og en anden uden, og endda blive et mareridt, der fører dig til at skulle opsætte et Google Analytics-underdomænefilter for at have konsekvent rapportering.

Der er faktisk nogle lette måder at sikre, at alle besøgende bliver omdirigeret til den sikre i HTACCESS-kraft HTTPS-version af webstedet og Web-underdomænet uden at påvirke besøgene, og det kan også bruges til at omdirigere webstedet til et andet websted med dette enkle og elegant metode.

Og derudover og for at gøre det komplet, for at sikre dig, at der er adgang til localhost-underdomænet uden Web-underdomænet eller omdirigering til HTTPS, og at sider, der slutter med skråstreg, bliver omdirigeret til normal side for at undgå dobbeltoptælling af de samme sider i rapporter.

Lad os slippe af med alle disse duplikerede sider, som gør det vanskeligt i slutningen at sammenlægge analyser korrekt:

  • http://mywebsite.com/page

  • http://mywebsite.com/page/

  • https://mywebsite.com/page

  • https://mywebsite.com/page/

  • http://www.mywebsite.com/page

  • http://www.mywebsite.com/page/

  • https://www.mywebsite.com/page

  • https://www.mywebsite.com/page/

  • Alt dette gøres ved at opdatere .htaccess-filen, som er en skjult fil, der bruges på Apache-servere, normalt gemt i websteds rodmappe.

Omdiriger side, der slutter med skråstreg

For at fjerne slutstreken fra URL'en, der slutter med en af ​​dem, og for at få anmodningerne omdirigeret til standardsiden uden skråstreg, skal du blot matche URL'er, der starter og slutter med en skråstreg, skal du sørge for, at det ikke er et bibliotek, der bliver anmodet om, og omdirigere til hele anmodningen URI uden sluttestreg.

Omdirigér også siden til den sikre web-URL, der skal være korrekt - dette vil løse alle dine potentielle problemer direkte, herunder afslutning af skråstreg, ikke sikker anmodning eller ikke web-underdomæne.

Vi har også brug for et ekstra stykke kode for at sikre, at enhver anmodning til et bibliotek ender med en skråstreg, da normale webadressekatalogadresser ender med en af ​​dem.

# Remove trailing slash from non-filepath urls
RewriteCond %{REQUEST_URI} /(.+)/$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ https://www.mywebsite.com/%1 [R=301,L]
# Include trailing slash on directory
RewriteCond %{REQUEST_URI} !(.+)/$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+)$ https://www.mywebsite.com/$1/ [R=301,L]

HTACCESS tvinger HTTPS og tvinger WWW htaccess

Nu hvor problemet med slutningen af ​​skråstregen er løst, lad os fokusere på den manglende HTTPS eller manglende Web-underdomæne, der kan ske, med en htaccess-omdirigering http til https med kraft www.

Den nemmeste og mest stilfulde måde at få det til at ske er at identificere begge i nøjagtigt samme htaccess-tilstand.

Dette gøres let ved at matche URL'er, der ikke starter med Web-underdomæne, eller en anmodning, der ikke inkluderer HTTPS, og omdirigere den korrekte URL på vores websted, der inkluderer både den sikre forbindelse og Web-underdomænet www.

# HTACCESS force HTTPS and force WWW htaccess 
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [R=301,L]

Tving HTTPS og WWW men tillad localhost

Nu er det alt godt, men hvad sker der, når vi faktisk prøver at nå vores websted i udviklingsfunktion på XAMPP lokal server, men alle vores anmodninger til http: // localhost bliver nu omdirigeret til https://www.mysite.com - vores produktionsversion?

Løsningen er at genbruge det forrige stykke kode, der håndhæver HTTPS- og WWW-versionen af ​​URL-anmodningen, men start den med at ekskludere kontrolforespørgsler, der enten er adresseret til localhost eller til vores lokale IP-adresse, som er 127.0.0.1.

Og det er det, vi har nu et smukt stykke kode, der vil løse alle vores problemer!

# HTACCESS force HTTPS and force WWW htaccess 
RewriteCond %{HTTP_HOST} !^localhost [NC]
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [R=301,L]

Omdiriger HTTP til HTTPS htaccess, tving WWW og fjern sluttestreg

Hele kodestykket nedenfor kan bruges i HTACCESS-filen til at opnå alt det følgende:

Omdiriger HTTP til HTTPS i htacces,

Tving WWW i htaccess,

Fjern sluttestreg i URL.

Glem naturligvis ikke at ændre webstedets webadresse til den, der gælder for dig.

Det kan endda bruges til at omdirigere websted til et andet websted ved blot at ændre destinationswebadresserne til dit andet bedste billige web-hosting-websted:

#--------------------------------------------------
# Force WWW htaccess : /
#--------------------------------------------------
#### Force HTTPS://WWW and remove trailing / from files ####
## Turn on rewrite engine
RewriteEngine on

# Remove trailing slash from non-filepath urls
RewriteCond %{REQUEST_URI} /(.+)/$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ https://www.mywebsite.com/%1 [R=301,L]

# Include trailing slash on directory
RewriteCond %{REQUEST_URI} !(.+)/$
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+)$ https://www.mywebsite.com/$1/ [R=301,L]

# HTACCESS force HTTPS and force WWW htaccess
RewriteCond %{HTTP_HOST} !^localhost [NC]
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1$
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [OR,NC]
RewriteCond %{https} off
RewriteRule ^(.*)$ https://www.mywebsite.com/$1 [R=301,L]

Lignende artikler

Kommentarer (0)

Efterlad en kommentar

Forøg annonceindtægterne 50-250% med Ezoic. En Google Certified Publishing Partner.
Forøg annonceindtægterne 50-250% med Ezoic. En Google Certified Publishing Partner.
 
Forøg annonceindtægterne 50-250% med Ezoic. En Google Certified Publishing Partner.
Forøg annonceindtægterne 50-250% med Ezoic. En Google Certified Publishing Partner.