NOOB braucht Hilfe: www und non-www ... wie kann ich das bei Joomla abschalten?

  • hallo Leute! ich bin ein totaler Neuling in Sachen Webseiten und Joomla. Ich weiss auch nicht ob das hier der richtige Bereich ist für mein Problem Falls der Bereich falsch ist dann entschuldigt bitte.

    Ich hatte vor einiger Zeit eine Wordpress Seite mit der ich sehr gut klar kam, meine neue Webseite habe ich mit Joomla und der Hilfe eines Freundes gemacht. Ich habe allerdings ein Riesenproblem dass ich auch nach mehrtägiger Recherche nicht lösen kann bzw. auch in diesem Forum durch die Suchfunktion nichts gefunden habe was ich verstehe. Ich bin Fotograf und mir fehlt einfach das Wissen/Expertise für das Problem.

    Das Problem ist folgendes:

    Wenn ich meine Seite durch verschiedene Website Checke laufen lasse bekomme ich immer die Fehlermeldung dass unter der Domain einmal die Variante mit www. davor und einmal ohne www. als zwei separate Webseiten klassifiziert werden. Da es bei Google zu "Duplikate Content" mutiert ist das einfach schädlich. Ich versuche das schon irgendwie seit einer Woche zu beheben durch redirects oder Löschung der htc.access oder oder oder ... ich habe wirklich schon alles mögliche probiert.

    Hier ein Screenshot was sitechecker auswirft:

    Bei jedem Webseiten Online-Test wird dieser Fehler ausgespuckt. Dass es einfach zwei separate Webseiten sind. Ich habe auch versucht mit dem internen Redirect Tool von YooTheme die Seiten untereinander umzuleiten aber leider hat das nicht funktioniert. Der Fehler war immer noch da.

    Der SITEMAP Fehler kommt wahrscheinlich von der als "Duplikate Content" klassifizierten Seite. Denn eine Sitemap ist vorhanden, eigentlich.

    Die Webseite wurde mit dem YOOtheme erstellt. Gehostet ist die Webseite bei Host Europe.

    Ich bin echt am verzweifeln. Ist hier vielleicht jemand der mir einen Tipp geben kann?

    ich würde mich sehr freuen! Viele Dank im Voraus an alle.

    :D

    Cheers Ondro

  • das kannst du über deine htaccess lösen.
    Einfach Umleitung setzen

    so z.B.

    <IfModule mod_rewrite.c>

    RewriteEngine On

    RewriteCond %{HTTP_HOST} !^http://www.domain.de$ [NC]

    RewriteRule ^(.*)$ https://www.domain.de/$1 [L,R=301]

    </IfModule>


    auch hier nachzulesen: https://www.redim.de/blog/nicht-www-auf-www-umleiten

    mfG
    LSG


    „Es gibt keine dummen Fragen. Nur dumme Antworten. Allerdings – gibt es Fragen, die eindeutig die Dummheit des Fragestellers selbst beweisen.“

  • lieber lsg.

    also soll ich das so in die htaccess kopieren ?

    <IfModule mod_rewrite.c>

    RewriteEngine On

    RewriteCond %{HTTP_HOST} !^http://www.domain.de/$ [NC]

    RewriteRule ^(.*)$ https://www.domain.de/%241 [L,R=301]

    </IfModule>

    sorry dass ich solche blöden Fragen stelle aber ich bin wirklich ungeübt mit so Coding zeug :D


    muss man das oben Dreinkopieren bevor man den zweiten reinmacht? also dass die rewrite_engine auf ON ist?

    <IfModule mod_rewrite.c>



    RewriteEngine On



    RewriteCond %{HTTP_HOST} !^http://www.domain.de$ [NC]

    RewriteRule ^(.*)$ https://www.domain.de/$1 [L,R=301]



    </IfModule>

    daaaaaankeeeee :D

  • genau so! die Erklärung im Link ist doch eindeutig! auch als nichtcoder sollte man das verstehen!
    weiterhin viel Spaß an Joomla

    mfG
    LSG


    „Es gibt keine dummen Fragen. Nur dumme Antworten. Allerdings – gibt es Fragen, die eindeutig die Dummheit des Fragestellers selbst beweisen.“

  • Danke. Ich habe das jetzt gemacht aber das Problem tritt weiterhin auf. Hier ein angehängter Screenshot der htaccess.

    So wie ich den Text gelesen habe, ist alles richtig.

    Vielleicht hat hat das mit irgendeiner globalen Einstellung zu tun oder gar mit dem Hoster.

  • aber das rewrite ist ain den Einstellungen von Joomla auch aktiviert?
    und auch die htassess.txt umbenannt?

    siehe hier
    https://www.hostflash.de/blog/webhostin…-anleitung.html

    und auch sicherstellen das dein Provider das eingestellt hat
    https://www.hosteurope.de/faq/webhosting…zu-mod-rewrite/


    https://www.hosteurope.de/faq/webhosting…http-auf-https/

    mfG
    LSG


    „Es gibt keine dummen Fragen. Nur dumme Antworten. Allerdings – gibt es Fragen, die eindeutig die Dummheit des Fragestellers selbst beweisen.“

  • Das ist auch nicht ganz korrekt, da man alle 4 Fälle abdecken muss.

    1. Achte zunächst darauf, dass

    ## Mod_rewrite in use.

    RewriteEngine On

    oberhalb steht und nimm das "RewriteEngine On" mal aus der IF-Anweisung raus!

    2. Dann musst du unterscheiden zwischen http und https sowie ohne-www und mit www. Wie man den Eintrag in die .htaccess gestaltet, hängt vom Hoster ab. Deshalb zwei Fragen vorneweg:

    a.) Wie wurde die Weiterleitung von http zu https realisiert? Über den Haken in der Backend-Konfiguration oder durch einen Eintrag in die .htaccess? Könntest du die eventuell mal komplett posten!

    b.) Zeigen deine ohne-www-domain und deine mit-www-Domain beide in das gleiche Verzeichnis, in welchem Joomla installiert ist? Es gibt Anbieter wie Alfahosting, da muss man diese mittels zwei verschiedenen Verzeichnissen einstellen. Weiß gerade nicht wie das bei deinem Hoster ist.

    Der klassische Dreizeiler, der eigentlich überall funktionieren sollte, wäre:

    Spoiler anzeigen

    ## SSL: In allen Fällen wird zur URL mit "https://www" weitergeleitet!

    RewriteCond %{HTTPS} !on [OR,NC]

    RewriteCond %{HTTP_HOST} !^www\. [NC]

    RewriteRule ^(.*)$ https://www.hochzeitsfotograf-ondro.de/$1 [R=301,L]

    In diesem Fall dann den Haken in der Backend-Konfiguration entfernen! Also SSL nicht erwingen, da das über den Dreizeiler gleich mit realisiert wird.

    Wenn das so funktioniert, du also immer zu https: //www. .... weitergeleitet wirst, egal welche der 4 Möglichkeiten du eingibst, dann brauchst du dir über hoster-spezifische Dinge keine Gedanken mehr zu machen.

  • Leute vielen Dank! Das sind schon mal super Tipps. Um 18 Uhr versuchen wir zusammen das umzusetzen was LSG & Joomla Wunder vorgeschlagen haben. Ich hab leider keinen Zugang zum FTP und kenne mich auch nicht aus. Aber gegen 18 Uhr kommt mein Kumpel der das für mich macht. Dann poste ich hier alles rein! DANKE nochmal an euch zwei !!!!

  • hallo JoomlaWunder & LSG

    also wir haben das gestern versucht und sind kläglich gescheitert. :(

    hier ist der Inhalt von der htaccess. wir haben einen Punkt davor gemacht also".htaccess" so heisst die Datei auf dem ftp server.

    Spoiler anzeigen

    ##

    # @package Joomla

    # @copyright Copyright (C) 2005 - 2020 Open Source Matters. All rights reserved.

    # @license GNU General Public License version 2 or later; see LICENSE.txt

    ##

    ##

    # READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!

    #

    # The line 'Options +FollowSymLinks' may cause problems with some server configurations.

    # It is required for the use of Apache mod_rewrite, but it may have already been set by

    # your server administrator in a way that disallows changing it in this .htaccess file.

    # If using it causes your site to produce an error, comment it out (add # to the

    # beginning of the line), reload your site in your browser and test your sef urls. If

    # they work, then it has been set by your server administrator and you do not need to

    # set it here.

    ##

    ## No directory listings

    <IfModule mod_autoindex.c>

    IndexIgnore *

    </IfModule>

    ## Suppress mime type detection in browsers for unknown types

    <IfModule mod_headers.c>

    Header always set X-Content-Type-Options "nosniff"

    </IfModule>

    ## Can be commented out if causes errors, see notes above.

    Options +FollowSymlinks

    Options -Indexes

    ## Disable inline JavaScript when directly opening SVG files or embedding them with the object-tag

    <FilesMatch "\.svg$">

    <IfModule mod_headers.c>

    Header always set Content-Security-Policy "script-src 'none'"

    </IfModule>

    </FilesMatch>

    ## Mod_rewrite in use.

    RewriteEngine On

    ## Begin - Rewrite rules to block out some common exploits.

    # If you experience problems on your site then comment out the operations listed

    # below by adding a # to the beginning of the line.

    # This attempts to block the most common type of exploit `attempts` on Joomla!

    #

    # Block any script trying to base64_encode data within the URL.

    RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]

    # Block any script that includes a <script> tag in URL.

    RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]

    # Block any script trying to set a PHP GLOBALS variable via URL.

    RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]

    # Block any script trying to modify a _REQUEST variable via URL.

    RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

    # Return 403 Forbidden header and show the content of the root home page

    RewriteRule .* index.php [F]

    #

    ## End - Rewrite rules to block out some common exploits.

    ## Begin - Custom redirects

    #

    # If you need to redirect some pages, or set a canonical non-www to

    # www redirect (or vice versa), place that code here. Ensure those

    # redirects use the correct RewriteRule syntax and the [R=301,L] flags.

    #

    ## End - Custom redirects

    ##

    # Uncomment the following line if your webserver's URL

    # is not directly related to physical file paths.

    # Update Your Joomla! Directory (just / for root).

    ##

    # RewriteBase /

    ## Begin - Joomla! core SEF Section.

    #

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    #

    # If the requested path and file is not /index.php and the request

    # has not already been internally rewritten to the index.php script

    RewriteCond %{REQUEST_URI} !^/index\.php

    # and the requested path and file doesn't directly match a physical file

    RewriteCond %{REQUEST_FILENAME} !-f

    # and the requested path and file doesn't directly match a physical folder

    RewriteCond %{REQUEST_FILENAME} !-d

    # internally rewrite the request to the index.php script

    RewriteRule .* index.php [L]

    #

    ## End - Joomla! core SEF Section.


    ist das richtig so ? wir haben mal geschaut im backend vom YOOtheme:


    ich bin echt am verzweifeln. es wäre schön wenn einer von euch falls unsere htaccess falsch ist einfach den kompletten code den ich einfach copy&pasten kann, hier reinschreibt bzw unsere Datei verbessert. einfach so als ganzen text damit Fehlerquellen beim einfügen durch meine Unfähigkeit ausgeblendet sind.


    danke dass ihr euch die zeit nehmt!


    cheers

    ondro

  • Die Webseite scheint, was ich so auf Anhieb erkennen kann, zu laufen, bis auf die Tatsache, dass die ohne-www zu mit-www -Weiterleitung nicht funktioniert. SEO und .htaccess laufen also grundlegend.

    Momentan ist in der .htaccess kein Code enthalten, der da weiterleitet. Wenn der angegebene Code nicht funktioniert, müsstest du mir mal einen Zugang per "Konversation" (hier oben) mitteilen, dann kann ich das mal testen!

    EDIT: Wenn du "https erzwingen" unbedingt über das Backend aktivieren möchtest, dann würde z.B. auch der folgende Zweizeiler in der .htaccess reichen:

    Spoiler anzeigen

    RewriteCond %{HTTP_HOST} !^www\.hochzeitsfotograf-ondro\.de$ [NC]

    RewriteRule ^(.*)$ https://www.hochzeitsfotograf-ondro.de/ [R=301,L]

    Einfach direkt unter RewriteEngine On eintragen!

    Gab es denn Fehlermeldungen bei euren Versuchen?

  • Hallo, ich habe leider exakt dasselbe Problem. Ich habe eine Weile an der Website im Offline Modus gebastelt und erst dann einen Punkt vor der htaccess Datei gesetzt - kurz bevor ich online gegangen bin.

    Ich habe immer wieder eine Weiterleitung zuviel - Redirect Check mittels serpworx.

    #mache ich das so

    RewriteCond %{HTTP_HOST} !^websitel.de$

    RewriteRule ^(.*)$ https://website.de/$1 [R=301,L]

    #dann kommt bei http://www.website.de 301 301 200 2

    #mache ich das so

    RewriteCond %{HTTP_HOST} !^www\. [NC]

    RewriteRule ^(.*)$ https://www.website.de/$1 [R=301,L]

    #dann kommt bei http://website.de zuviel... 301 301 200 2

    Ich bekomme nicht hin, bei beiden die eine 301 Weiterleitung zu entfernen. Was mache ich falsch? Ich habe von Programmierung leider so keine Ahnung. :(

    Vielen Dank.

  • Füge mal genau das ein (nichts drin rumschreiben, genau so kopieren) und schau mal obs damit geht.

    Apache Configuration
    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteRule .* http://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
  • Hallo, ich habe leider exakt dasselbe Problem. Ich habe eine Weile an der Website im Offline Modus gebastelt und erst dann einen Punkt vor der htaccess Datei gesetzt - kurz bevor ich online gegangen bin.

    Beachte: Du musst nicht nur einen Punkt vor die htaccess setzen, sondern es darf auch keine Dateiendung vorhanden sein, damit die Datei vom Server abgearbeitet wird.

    Je nach Hoster und Tarif kann es sein, dass die Versionen mit- und ohne-www in verschiedene Verzeichnisse geleitet werden. In diesem Fall wäre anders vorzugehen als bei der "Standard"-Vorgehensweise (Standard: siehe #7, da ist der entsprechende Code für Weiterleitung von nicht-www bzw. http zu mit-www und https für die .htaccess angegeben)

    Welches soll denn überhaupt deine bevorzugte Domain sein, also wohin soll weitergeleitet werden? www oder ohne-www?

    Nimm die, welche bei Google hauptsächlich indexiert ist; meist ist es nur 1 Variante.

    Wird die http->https-Weiterleitung bereits über "SSL erzwingen" in der Joomla-Konfiguration eingestellt oder besteht bereits ein entsprechender Eintrag in der .htaccess? Beides gleichzeitig darf nicht sein.

    EDIT: Für deine angegebene Webseite ist doch eine Weiterleitung auf eine andere Domain eingestellt???

  • Link zur Website bzw. zum Problem?

    Um www allgemein zu erzwingen alternativ das:

    Apache Configuration
    RewriteCond %{HTTP_HOST} !^$
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteCond %{HTTPS}s ^on(s)|
    RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    in den folgendem Bereich deiner .htaccess einfügen:

    github.com/joomla/joomla-cms/blob/5.0.3/htaccess.txt#L82-L88

    Andere diesbezüglich bereits in die .htaccess zusätzlich eingefügte Umleitungen mußt du natürlich entfernen.