Ergebnis 1 bis 13 von 13

Thema: 301-Weiterleitung in .htaccess geht nicht

  1. #1
    mag-page
    Gast

    Frage 301-Weiterleitung in .htaccess geht nicht

    Hallo,

    ich habe, nach der Aktualisierung der alten Seite, nun in den Google Webmastertools viele 404- Fehler. Deshalb wollte ich mi der .htaccess wieder eine 301- Weiterleitung einfügen. Bei allen Seiten hat das bisher so geklappt:
    Code:
    RedirectPermanent /home.htm http://www.reitsport-poetzsch.de/startseite.html
    Die Seiten von einer anderen Seite wurde sonst immer auf diese sehr umständlichen Weise aufgerufen und zusammengebaut:
    Code:
    http://www.xyz.de/htmls/main.php?mySiteKey=reitanlage
    Wenn ich jetzt das nach dem Prinzip wie oben ausfülle, sieht es so aus:
    Code:
    RedirectPermanent /htmls/main.php?mySiteKey=reitanlage http://www.xyz.de/reitanlage.html
    ...und geht nicht. Ich denke, weil keine Endung (.html) oder weil es zu viele "/" sind.
    Wie kann ich diese Seiten trotzdem umleiten auf die neuen Seite? Die Suchmaschine muss das auch indexieren können.

    Viele Grüße,
    mag-page
    Geändert von mag-page (18.03.2012 um 12:54 Uhr) Grund: Code- optimierung vergessen :)

  2. #2
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Ich glaub das Redirect nicht funktioniert hatten wir schon mal.
    Versuch mal über Rewrite:
    Rewrite htmls/main.php?mySiteKey=reitanlage http://www.xyz.de/reitanlage.html [R,L]
    oder dynamisch
    Rewrite htmls/main.php?mySiteKey=([^&]+) http://www.xyz.de/$1.html [R,L]

  3. #3
    mag-page
    Gast

    Standard

    Hallo tril,

    also damit
    Code:
    Rewrite htmls/main.php?mySiteKey=reitanlage http://www.xyz.de/reitanlage.html [R,L]
    erhalte ich einen

    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, service@webmailer.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Was kann ich noch machen?
    Ich habe ungefähr 20 Seiten, die auf verschiedene andere Seiten umleiten muss, also geht es warscheinlich nicht dynamisch.

    Viele Grüße,
    mag-page

  4. #4
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Ok, der mag vermutlich den query String nicht.
    Code:
    RewriteCond %{QUERY_STRING} ^mySiteKey=reitanlage$
    RewriteRule ^htmls/main\.php$ http://www.xyz.de/reitanlage.html? [R=301,L]
    oder
    Code:
    RewriteCond %{QUERY_STRING} ^mySiteKey=(.*)$
    RewriteRule ^htmls/main\.php$ http://www.xyz.de/%1.html? [R=301,L]
    siehe dazu auch: http://www.simonecarletti.com/blog/2...-query-string/

  5. #5
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Standard

    Ich hab das Problem auch, und kann mir nicht erklären wieso.

    ein:

    HTML-Code:
    redirect permanent /index.php?language=de&pagecontent=delivery http://www.example.com/filiale.html
    will einfach nicht funktionieren
    liegt das an der contao-htaccess bzw. das was sie regelt? die alten urls sind alle auf index.php mit get vars... die neuen alle auf .html

    Kann mir da auch jemand nen Tip gehen?

    gruss
    ways
    Geändert von ways2web (15.11.2012 um 00:32 Uhr)

  6. #6
    Contao-Urgestein Avatar von tril
    Registriert seit
    07.01.2010.
    Ort
    Bad Marienberg
    Beiträge
    2.939
    User beschenken
    Wunschliste

    Standard

    Ich glaub "redirect permanent" kann nicht mit GET Parametern umgehen, du musst es so machen wie hier beschrieben:
    https://www.contao-community.de/show...l=1#post192413

  7. #7
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Ich löse das immer mit RedirectMatch. Hat bisher immer funktioniert.

    Hier z.B. zusammen mit folderurl:
    Code:
    RedirectMatch 301 ^/projekt01/index.php?idcat=1 http://www.domainname.tld/projekte/

  8. #8
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Eine weitere Möglichkeit, die diese cryptischen Query_Strings auch aus der Adressleiste entfernt. Der String wird dabei zerlegt und dann umgeschrieben. Das dem Sring vorgestellte ? wird nicht in die RewriteCond aufgenommen.

    Code:
    RewriteCond %{REQUEST_URI} ^/ [NC]
      RewriteCond %{QUERY_STRING} ^ressort=7$ [NC]
      RewriteRule ^(.*)$ http://www.domainname.tld/showroom/? [L,R=301]
    Es ist auch möglich, mehrere alte Adressen auf eine neue Seite umzuleiten:

    Code:
    RewriteCond %{REQUEST_URI} ^/ [NC]
      RewriteCond %{QUERY_STRING} ^ressort=7$ [NC,OR]
      RewriteCond %{QUERY_STRING} ^ressort=4$ [NC,OR]
      RewriteCond %{QUERY_STRING} ^ressort=5$ [NC,OR]
      RewriteCond %{QUERY_STRING} ^ressort=6$ [NC]
      RewriteRule ^(.*)$ http://www.domainname.tld/projekte/? [L,R=301]
    Geändert von bizon (15.11.2012 um 08:46 Uhr)

  9. #9
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Standard

    Hallo Tril & Bizon,

    Ich danke für eure Hilfe!

    Ich hatte das gleiche Problem auch in einem redirect4ward thread gepostet, weil ich nicht wußte wo das problem sitzt... mit dem Beispiel von Bizon konnte ich nun die erste Urls umleiten.
    nen 301 wird den suchmaschinen aber dadurch nicht gemeldet oder ist das nicht so wichtig?

    gruss
    ways

  10. #10
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    RedirectMatch 301 s.o. und im Rewirite Beispiel steht der 301 in der RewriteRule doch auch drin.

    Ich hab dir auch im 2. Thread geantwortet.
    Geändert von bizon (15.11.2012 um 10:35 Uhr)

  11. #11
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von bizon Beitrag anzeigen
    Redirect permanent hat den 301 im Namen (permanent = 301) und im Rewirite Beispiel steht der 301 in der RewriteRule doch drin.

    Ich hab dir auch im 2. Thread geantwortet.

    ei ei... alles klar.. stimmt.. ich hab nur blind probiert weil ich schon so hoffnungslos war... nun seh ich das auch.. .nochmals vielen dank!

  12. #12
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.125

    Standard

    Welche Version nimmst du?

    Das Rewrite Beispiel schreibt auch die URL in der Adressleiste sauber um!

  13. #13
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Standard

    Hi Bizon,

    ich verwende:

    Code:
    RewriteCond %{REQUEST_URI} ^/ [NC]
    RewriteCond %{QUERY_STRING} ^language=de&pagecontent=delivery$ [NC]
    RewriteRule ^(.*)$ http://www.deinedomain.tld/filiale.html? [L,R=301]
    gruss
    ways
    Geändert von ways2web (15.11.2012 um 10:59 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •