htacces http naar https

  • Hallo,


    Ik wil al mijn bezoekers van http naar https sturen. Dit lukt al met .htaccess zie:


    Apache Configuration
    RewriteCond %{HTTPS} !=on
    RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
    RewriteCond %{HTTP_HOST} !^www.domein.be$ [NC]
    RewriteRule ^(.*)$ https://www.domein.be/$1 [L,R=301]
    RewriteCond %{HTTP_USER_AGENT} libwww-perl.* 
    RewriteRule .* ? [F,L]

    Maar nu zit ik met het probleem dat mijn subdomeinen worden doorgestuurd naar https://www.domein.be/subdomein
    Weet er iemand hoe ik subdomeinen zoals http://subdomein.domein.be doorstuur naar https//subdomein.domein.be met htaccess?



    Met vriendelijke groeten,


    Aaron

  • :)


    Speel eens na wat er gebeurt als je http://subdomein.domein.be/ intypt.


    Volgens mij wordt je twee keer geredirect. De eerste keer vuurt de eerste RewriteRule omdat je niet op https zit. De tweede keer (na de initiële redirect) vuurt je tweede RewriteRule omdat je niet op het www-subdomein zit.


    Ik zou zeggen, om je probleem op te lossen: verwijder regel 3 en 4?


    Tenzij op sommige subdomeinen HTTPS uit staat en op andere aan staat ofzo? Je zou dan voor alle subdomeinen een expliciete RewriteRule kunnen maken (of twee lijsten maken: subdomeinen met en subdomeinen zonder HTTPS), of de suggestie van @Ferhat.Remory volgen (het beheer in PHP onderbrengen).

  • waarom gewoon niet met php..?

    Omdat ik op zoek ben naar een manier voor dit te kunnen doen in htaccess...




    regel 3 & 4 weghalen lukte inderdaad. maar dan zit ik tegen een ander probleem. de SEO
    Ik deed onlangs een SEO test en daar kwam de melding dat ik dit erbij moest plaatsten:


    Apache Configuration
    RewriteCond %{HTTP_HOST} ^www\.example\.com$
    RewriteRule ^/?$ "http\:\/\/example\.com\/" [R=301,L]

    Enig idee hoe ik beide erin kan laten?

  • Uhm, dus als je op het subdomein www zit dat je dan naar example.com wordt doorgestuurd? Is alles (verder) https?

    alles is inderdaad https, maar met die 2 regels word mijn subdomein na de .com geplaatst ipv voor het domein.


    Als ik die 2 regels dus weghaal lukt het wel, maar is mijn seo mindergoed...

  • Maar waarom is je SEO dan minder goed? Dit komt toch enkel doordat de toevoeging 301 (HTTP status Moved Permanently) ontbreekt?


    Voeg deze overal toe en kijk hoe dat voor je uitpakt als de rest van de RewriteRules hun ding doen?

    SEO is mindergoed omdat je content van je website dan dubbel staat in een zoekmachine (http://www.domen.be & http://domen.be)
    Het is altijd beter om alles naar 1 te herleiden. je scoort dan ook beter bij zoekmachines.


    Ik heb net de oplossing gevonden:


    Apache Configuration
    RewriteCond %{HTTPS} !=on
    RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
    RewriteCond %{HTTPS_HOST} ^www\.qual-it\.be$
    RewriteRule ^/?$ "https\:\/\/qual\.be\/" [R=301,L]
    RewriteCond %{HTTP_USER_AGENT} libwww-perl.* 
    RewriteRule .* ? [F,L]
    RewriteCond %{HTTP_HOST} ^www\.(.*)
    RewriteRule ^.*$ https://%1/$1 [R=301,L]

    Hiermee stuurt hij alle verkeer van http naar https en stuurt hij de http(s)://www. naar http(s)://



    [+] Alles loopt over https
    [+] SEO is beter
    [-] Kan een kleine vertraging bekomen (ms)

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!