Antworten auf deine Fragen:
Neues Thema erstellen

Erledigt - 301 Redirect funktioniert nicht

Fugel

rebmeM

PSD Beta Team
Hallo Leute,

ich will bald mit einer alten Version auf eine neue umziehen und hab daher für Google und Co. einen 301 Redirect eingerichtet:

Code:
RewriteEngine on
Redirect 301 /alte-seite.php?id=xxx https://domain.de/neue-seite.html

den Code habe ich zusammen mit der Joomla htaccess Datei gespeichert:

Code:
##
# @package    Joomla
# @copyright  Copyright (C) 2005 - 2017 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 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 autoindex>
  IndexIgnore *
</IfModule>

## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes

## Mod_rewrite in use.

RewriteEngine On

##Alte Seiten zu neuen Umleiten
Redirect 301 /alte-seite.php?id=xyx https://domain.de/neue-seite.html
Redirect 301 /alte-seite.php?id=xyy https://domain.de/neue-seite.html
Redirect 301 /alte-seite.php?id=xxx https://domain.de/neue-seite.html

## 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.

Leider passiert wenn ich eine alte URL eingebe nix. Kann mir da einer helfen?
 

G

Gelöschtes Mitglied 633957

Guest

301 definiert die Weiterleitung von einer bestehenden (oder alten) Domain zu einer anderen (oder neuen) Domain.
Um Seiten oder von Verzeichnissen aus umzuleiten, lasse das 301 einfach weg, also nur: Redirect [alt] [neu]
 
G

Gelöschtes Mitglied 633957

Guest

Aber ist es dann noch Google konform?
Das ist eine gute Frage, die ich nicht mit Sicherheit beantworten kann, auch wenn ich der Meinung bin das GoogleBots dem Redirect folgen werden.
Alternativ kannst Du die Weiterleitung auch in Deine index.php schreiben:
Code:
<?php
header ("HTTP/1.1 301 Moved Permanently");
header("Location: https://domain.de/neue-seite.html");
exit;
?>


Edit: Fast vergessen, die Weiterleitung kann natürlich auch über eine RewriteRule in der htaccess geschehen:
Code:
RewriteCond %{QUERY_STRING} ^id=xxx$
RewriteRule ^.*$ https://domain.de/neue-seite.html? [R=301,L]
Hier würde z.B.
Code:
/index.php?id=xxx
nach
Code:
https://domain.de/neue-seite.html
umgeleitet und der Statuscode 301 mitgeliefert werden!
 
Zuletzt bearbeitet von einem Moderator:

lachender_engel

Aktives Mitglied

Aber ist es dann noch Google konform?
Ja und nein. Die Frage ist doch, was Du erreichen willst. Redirect 301 meldete Google, dass die angefragte Seite permanent eine neue URL hat. Damit wird bei den Suchmaschienen (nicht nur bei Google) der Index der bisherigen Seite beibehalten und nur die URL umgeschrieben.

Der von Dir verwendete Code stimmt.
Wenn der nicht funktioniert meine ich, dass mod_rewrite nicht installiert/aktiviert ist.
 

Fugel

rebmeM

PSD Beta Team
Ja und nein. Die Frage ist doch, was Du erreichen willst. Redirect 301 meldete Google, dass die angefragte Seite permanent eine neue URL hat. Damit wird bei den Suchmaschienen (nicht nur bei Google) der Index der bisherigen Seite beibehalten und nur die URL umgeschrieben.

Der von Dir verwendete Code stimmt.
Wenn der nicht funktioniert meine ich, dass mod_rewrite nicht installiert/aktiviert ist.

Genau das will ich bezwecken. mod_rewrite ist aktiviert. Ich habs jetzt zum Test auch mal ohne "301" versucht, geht aber auch nicht.
 
G

Gelöschtes Mitglied 633957

Guest

geht aber auch nicht.
Bin mir ziemlich sicher, dass das ? nicht verstanden wird. Versuche es einmal mit der RewriteRule!
Wenn mein Beispiel für dich nicht passt, dann setze Dich einmal mit regulären Ausdrücken auseinander und/oder schaue einmal auf diesen beiden Seiten vorbei:
http://wiki.schmidtmarcel.de/htaccess-rewritecond-rewriterule/
https://www.brontobytes.com/knowledgebase/149/htaccess-RewriteRule-Examples.html
Zur Not hilft vielleicht auch folgender Generator:
https://www.brontobytes.com/knowledgebase/205/htaccess-301-Redirect-Generator.html
 

Fugel

rebmeM

PSD Beta Team
Du hast recht, er kam mit den Variablen hinter "?" nicht klar. Habs jetzt so gemacht und nun klappts:

Code:
RewriteCond %{QUERY_STRING} ^id=impressum$ [NC]
RewriteRule ^index\.php$ https://www.xxx.de/impressum.html? [L,R=301]

Man(n) lernt nie aus ;)
 
S

smarvasti

Guest

Moin,
ich habe ein ähnliches Problem (vermute ich - kenne mich nicht wirklich in der Richtung aus) ich habe einen 301 redirect auf die home über Wordpress in der .htaccess Datei eingerichtet jedoch funktioniert dieser leider nicht. Soweit ich aus diesem Artikel schlau geworden bin liegt es vermutlich an dem "?" im Link? Wäre über Hilfe super dankbar!!
Hier was in der .htaccess Datei steht:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

</IfModule>


# END WordPress

redirect 301 /club-home?language=de#/clubtour /
redirect 301 /club-home?language=de# /
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
118.611
Beiträge
1.538.342
Mitglieder
67.524
Neuestes Mitglied
BSKGA
Oben