Υπάρχουν πολλές διαθέσιμες επιλογές για την ανακατεύθυνση domain ή υποdomain σε άλλη ενότητα του ιστότοπού σας ή σε μια εξωτερική διεύθυνση. Οι ανακατευθύνσεις πραγματοποιούνται συχνά μέσω του αρχείου .htaccess, σεναρίων PHP, μετα-ετικετών HTML και JavaScript.

Σε τι χρησιμεύουν οι ανακατευθύνσεις domain;

Οι ανακατευθύνσεις χρησιμοποιούνται για να ενημερώνουν τους διακομιστές ότι το περιεχόμενο ενός ιστότοπου έχει μεταφερθεί από μια διεύθυνση URL σε μια άλλη. Αυτό είναι απαραίτητο όταν η αρχική διεύθυνση ιστού αποτελεί προορισμό εισερχόμενου συνδέσμου, έχει αποθηκευτεί στον υπολογιστή ενός χρήστη ή ενδέχεται να κατέχει εξέχουσα θέση στις σελίδες αποτελεσμάτων των μηχανών αναζήτησης (SERPs). Σε αυτή την περίπτωση, η ανακατεύθυνση ενημερώνει το πρόγραμμα περιήγησης ή τον ιστό-ανιχνευτή ότι το περιεχόμενο έχει μετακινηθεί, παρέχοντας στον χρήστη έναν σύνδεσμο προς τη νέα διεύθυνση. Χωρίς ανακατευθύνσεις, οι επισκέπτες του ιστότοπου θα έβλεπαν μια σελίδα σφάλματος 404 αντί για τον ιστότοπο που αναζητούν.

Αυτό είναι κάτι που τα εμπορικά διαδικτυακά έργα επιθυμούν ιδιαίτερα να αποφύγουν. Τα ηλεκτρονικά καταστήματα προσφέρουν μια συνεχώς μεταβαλλόμενη γκάμα προϊόντων που εμφανίζονται σε διάφορες ιστοσελίδες. Όταν ένα προϊόν δεν είναι πλέον διαθέσιμο, οι πιθανοί πελάτες ανακατευθύνονται σε μια σελίδα με παρόμοια προϊόντα. Αυτό σας επιτρέπει να κατευθύνετε αποτελεσματικά τη ροή των επισκεπτών και να ελαχιστοποιείτε τα ποσοστά εγκατάλειψης.

Όταν ρυθμίζετε μια ανακατεύθυνση domain, μπορείτε επίσης να κάνετε το ίδιο περιεχόμενο διαθέσιμο σε διαφορετικές διευθύνσεις ιστού. Όλες οι εναλλακτικές διευθύνσεις ανακατευθύνονται απλώς στον επιθυμητό domain του ιστότοπου, ανεξάρτητα από τη συγκεκριμένη διεύθυνση URL ή τη διαδρομή που εισάγουν οι χρήστες.

Ποιοι τύποι ανακατευθύνσεων domain υπάρχουν;

Γενικά, γίνεται διάκριση μεταξύ ανακατευθύνσεων από την πλευρά του πελάτη και ανακατευθύνσεων από την πλευρά του διακομιστή. Στις ανακατευθύνσεις domain από την πλευρά του διακομιστή, οι αντίστοιχοι κωδικοί κατάστασης HTTP μεταφέρονται στους πελάτες (προγράμματα περιήγησης ή web crawlers). Η κατάσταση διαφέρει ελαφρώς όσον αφορά τις ανακατευθύνσεις από την πλευρά του πελάτη. Αυτές πραγματοποιούνται χωρίς καμία απάντηση, δηλαδή δεν εκδίδονται κωδικοί κατάστασης. Αυτός είναι ο λόγος για τον οποίο οι τελευταίες δεν υποστηρίζονται από όλους τους πελάτες. Αυτή η δυσκολία μπορεί μερικές φορές να οδηγήσει σε καταστάσεις όπου οι επισκέπτες παραμένουν στην αρχική σελίδα και δεν ανακατευθύνονται πουθενά. Μειονεκτήματα όπως αυτά είναι ο λόγος για τον οποίο η επιλογή από την πλευρά του διακομιστή προτιμάται συχνά για τις ανακατευθύνσεις. Οι λύσεις από την πλευρά του πελάτη πρέπει να χρησιμοποιούνται μόνο όταν οι ανακατευθύνσεις domain από την πλευρά του διακομιστή έχουν αποκλειστεί για τεχνικούς λόγους.

Ένας άλλος τύπος ανακατεύθυνσης domain είναι η διαφανής ή αόρατη ανακατεύθυνση. Με αυτόν τον τύπο ανακατεύθυνσης, η διεύθυνση URL δεν αλλάζει. Όσον αφορά τις ανακατευθύνσεις domain με απόκρυψη, η διεύθυνση URL που εμφανίζεται στον χρήστη δεν αλλάζει, παρόλο που ο πελάτης έχει προωθηθεί σε άλλο domain και του εμφανίζεται το περιεχόμενο μιας άλλης ιστοσελίδας. Ωστόσο, δεδομένου ότι αυτός ο τύπος προώθησης μπορεί να προκαλέσει δυσκολίες στην ευρετηρίαση και στον τρόπο εμφάνισης της διεύθυνσης URL στον browser, δεν συνιστάται εκτός αν ισχύουν ορισμένοι περιορισμοί.

Tip

Θέλετε να ρυθμίσετε την ανακατεύθυνση ενός domain; Στο παρακάτω άρθρο του Κέντρου Βοήθειας της IONOS, μπορείτε να μάθετε βήμα προς βήμα πώς να ανακατευθύνετε το domain σας σε ένα άλλο domain.

Ανακατευθύνσεις από την πλευρά του διακομιστή

Στις περισσότερες περιπτώσεις, οι ανακατευθύνσεις domain από την πλευρά του διακομιστή πραγματοποιούνται μέσω του αρχείου ρυθμίσεων .htaccess ή ενός σενάριου PHP. Αυτές οι μέθοδοι επιτρέπουν τον ξεχωριστό καθορισμό του κωδικού κατάστασης HTTP που θα εμφανίζεται στον user agent. Έτσι, οι διαχειριστές ιστοσελίδων μπορούν να ορίσουν τις ανακατευθύνσεις domain ως μόνιμες ή προσωρινές. Για τον σκοπό αυτό χρησιμοποιούνται οι κωδικοί κατάστασης HTTP 301 και 302.

  • 301 – Μόνιμη μετακίνηση: Ο ζητούμενος πόρος είναι πλέον μόνιμα διαθέσιμος στη διεύθυνση URL προς την οποία γίνεται η ανακατεύθυνση. Η παλιά διεύθυνση URL θα παραμείνει άκυρη από εδώ και στο εξής. Σε αυτή την περίπτωση απαιτείται ανακατεύθυνση 301.
  • 302 – Προσωρινή μετακίνηση: Ο ζητούμενος πόρος είναι διαθέσιμος στη διεύθυνση URL προς την οποία γίνεται η ανακατεύθυνση. Σε αντίθεση με τον κωδικό 301, η αρχική διεύθυνση URL παραμένει έγκυρη.

Εάν ο κωδικός κατάστασης HTTP δεν έχει οριστεί ρητά, ο διακομιστής ιστού εκπέμπει τον κωδικό κατάστασης 302 κατά τη διάρκεια μιας ανακατεύθυνσης από την πλευρά του διακομιστή. Αυτό δεν είναι πάντα απαραίτητο, οπότε είναι προτιμότερο να εισάγετε χειροκίνητα τον επιθυμητό κωδικό κατάστασης για κάθε ανακατεύθυνση, καθώς έτσι μειώνονται οι πιθανότητες εμφάνισης σφαλμάτων ευρετηρίασης, όπως η «απαγωγή» URL. Σε αντίθεση με την ανακατεύθυνση 301, ο κωδικός κατάστασης 302 ενημερώνει τα προγράμματα ανίχνευσης ιστού ότι η αρχική διεύθυνση URL πρέπει να παραμείνει ευρετηριασμένη. Εάν αυτό προορίζεται να είναι μόνιμο, η διεύθυνση ανακατεύθυνσης ανταγωνίζεται τον προορισμό ανακατεύθυνσης στο ευρετήριο της μηχανής αναζήτησης.

ανακατεύθυνση .htaccess

Το .htaccess είναι ένα αρχείο ρυθμίσεων για τους διακομιστές ιστού Apache. Χρησιμοποιείται για την παράκαμψη των κεντρικών ρυθμίσεων σε επίπεδο καταλόγου. Το αρχείο αυτό επιτρέπει στους διαχειριστές ιστοτόπων να εφαρμόζουν ρυθμίσεις που αφορούν συγκεκριμένους καταλόγους για τους τομείς και τους υποκαταλόγους τους. Μία από τις λειτουργίες του αρχείου .htaccess είναι η ανακατεύθυνση τομέων από την πλευρά του διακομιστή, από μεμονωμένες διευθύνσεις προς άλλες διευθύνσεις URL.

Μπορείτε να ρυθμίσετε την ανακατεύθυνση ενός domain χρησιμοποιώντας κώδικα στο αρχείο .htaccess. Μόλις τοποθετηθεί ένα αρχείο .htaccess με τον παρακάτω κώδικα στους κύριους καταλόγους, οι αιτήσεις για το αρχικό domain ανακατευθύνονται από την πλευρά του διακομιστή στο domain www.example.com:

Redirect 301 / http://www.example.com/
apacheconf

Αυτή η γραμμή κώδικα ξεκινά με redirect 301 και καθορίζει ποιον κωδικό κατάστασης HTTP πρέπει να επιστρέψει ο διακομιστής. Ακολουθεί η διαδρομή προς το περιεχόμενο που πρέπει να ανακατευθυνθεί. Στο παραπάνω παράδειγμα, ανακατευθύνεται όλο το περιεχόμενο. Το τελικό βήμα ολοκληρώνεται όταν η πλήρης διεύθυνση URL προορισμού ανακατευθύνεται στη διεύθυνση URL του προγράμματος περιήγησης: http://www.example.com.

Αυτή η μέθοδος επιτρέπει την ανακατεύθυνση μεμονωμένων αρχείων. Ο παρακάτω κώδικας παρουσιάζει μια ανακατεύθυνση μέσω του αρχείου .htaccess από έναν ιστότοπο σε έναν άλλο:

Redirect 301 /directory/example-document.html http://www.example.com/example.html
apacheconf

Αφού ληφθεί μέριμνα για τον κωδικό κατάστασης HTTP 301, καθορίζονται η διαδρομή του φακέλου του αρχείου που πρόκειται να ανακατευθυνθεί μόνιμα (/directory/example-document.html) και η διεύθυνση URL ανακατεύθυνσης (http://www.example.com/example.html).

Δείτε πώς θα εμφανιζόταν η μόνιμη ανακατεύθυνση σε έναν διακομιστή Apache με ενεργοποιημένο το module mod_rewrite:

RewriteEngine On
RewriteRule ^directory/example-document.html$ http://www.example.com/example.html [L,R=301]
apacheconf

Στη γραμμή κώδικα 01, ενεργοποιείται η ενότητα mod_rewrite του διακομιστή ιστού Apache με την εντολή RewriteEngine On. Ακολουθεί το RewriteRule, το οποίο περιλαμβάνει τη διαδρομή του αρχείου ανακατεύθυνσης και τη διεύθυνση προορισμού. Τα σύμβολα καρέ και δολαρίου σηματοδοτούν την αρχή και το τέλος της διαδρομής, ενώ L υποδηλώνει τον τελευταίο κανόνα mod_rewrite για το αντίστοιχο αίτημα. R=301 προωθεί την κατάσταση HTTP 301.

Κατά τη ρύθμιση μιας ανακατεύθυνσης domain μέσω του αρχείου .htaccess, είναι σημαντικό να έχετε κατά νου ότι τυχόν λανθασμένες καταχωρήσεις θα έχουν σοβαρές συνέπειες για τη λειτουργία ενός ιστότοπου. Δεδομένου ότι αυτές οι αλλαγές τίθενται σε ισχύ αμέσως μετά την αποθήκευση του αρχείου .htaccess, οι ρυθμίσεις πρέπει πάντα να ελέγχονται διεξοδικά.

Ανακατευθύνσεις PHP

Η ανακατεύθυνση ενός domain δεν μπορεί να πραγματοποιηθεί μόνο μέσω της διαμόρφωσης του αρχείου .htaccess, αλλά και μέσω μιας εντολής σε ένα σενάριο PHP (π.χ. στο αρχείο index.php). Ο παρακάτω κώδικας παρουσιάζει μια μόνιμη ανακατεύθυνση προς τη φανταστική διεύθυνση URL προορισμού, www.example.com:

<?php
header("Status: 301 Moved Permanently");
header("Location: http://www.example.com");
exit;
?>
php

Κατά την ανακατεύθυνση μέσω σενάριου PHP, ο επιθυμητός κωδικός κατάστασης HTTP ορίζεται μέσω της συνάρτησης header στη δεύτερη γραμμή του κώδικα. Σε αυτό το παράδειγμα, πρόκειται να πραγματοποιηθεί μόνιμη ανακατεύθυνση 301. Δεδομένου ότι οι ανακατευθύνσεις από την πλευρά του διακομιστή εκτελούνται συνήθως σε προσωρινή βάση, πρέπει να ληφθούν ενεργά μέτρα για την πραγματοποίηση μόνιμων ανακατευθύνσεων μέσω του κωδικού κατάστασης 301. Με τις μόνιμες ανακατευθύνσεις, η διεύθυνση προορισμού της ανακατεύθυνσης του domain καταχωρείται επίσης με header. Η ανακατεύθυνση σε αυτό το παράδειγμα οδηγεί στη συνέχεια στη διεύθυνση http://www.example.com. Η συνάρτηση exit στη γραμμή 04 του κώδικα τερματίζει το σενάριο και εμποδίζει την εκτέλεση της επόμενης γραμμής κώδικα. Προκειμένου οι ανακατευθύνσεις να λειτουργούν μέσω σενάριου PHP, το μπλοκ κώδικα πρέπει να βρίσκεται στην αρχή της σελίδας HTML. Αυτό εμποδίζει τον διακομιστή να μεταφέρει περιεχόμενο HTML στη σελίδα ανακατεύθυνσης.

Ανακατευθύνσεις από την πλευρά του πελάτη

Εάν η πραγματοποίηση ανακατεύθυνσης τομέα από την πλευρά του διακομιστή δεν είναι εφικτή για τεχνικούς λόγους, οι διαχειριστές ιστοσελίδων έχουν τη δυνατότητα να χρησιμοποιήσουν λύσεις από την πλευρά του πελάτη. Για τον σκοπό αυτό, μπορούν να χρησιμοποιηθούν η ετικέτα meta HTML refresh καθώς και η γλώσσα JavaScript. Το μειονέκτημα των ανακατευθύνσεων από την πλευρά του πελάτη είναι ότι οι διακομιστές δεν αποστέλλουν κωδικούς κατάστασης HTTP στους περιηγητές ή στους ανιχνευτές ιστού που υποβάλλουν το αίτημα, πράγμα που σημαίνει ότι δεν ενημερώνονται ρητά για την ανακατεύθυνση. Επιπλέον, οι ανακατευθύνσεις από την πλευρά του πελάτη δεν υποστηρίζονται από όλους τους user agents, πράγμα που σημαίνει ότι υπάρχει κίνδυνος να μην ανακατευθυνθούν όλοι οι επισκέπτες του ιστότοπου.

Οι ανακατευθύνσεις από την πλευρά του πελάτη έχουν αρνητικές επιπτώσεις στην ευρετηρίαση από τις μηχανές αναζήτησης. Η ρητή εξαίρεση από την ευρετηρίαση μέσω του κωδικού κατάστασης HTTP 301 δεν ισχύει στις ανακατευθύνσεις από την πλευρά του πελάτη. Αυτό μπορεί να οδηγήσει σε ανταγωνισμό μεταξύ των τομέων ανακατεύθυνσης και των τομέων προορισμού όσον αφορά την κατάταξη στις μηχανές αναζήτησης. Σε αντίθεση με τις ανακατευθύνσεις από την πλευρά του διακομιστή, οι οποίες παραμένουν σε μεγάλο βαθμό αόρατες στους χρήστες, οι ανακατευθύνσεις από την πλευρά του πελάτη συνοδεύονται πάντα από καθυστερήσεις, τις οποίες ορισμένοι χρήστες ενδέχεται να αντιληφθούν.

Ανακατεύθυνση μέσω της εντολής meta refresh της HTML

Οι ανακατευθύνσεις μέσω meta tag HTML υλοποιούνται μέσω meta tag με το χαρακτηριστικό http-equiv. Το μόνο που απαιτείται για αυτό είναι ένα απλό αρχείο HTML και μια αντίστοιχη ετικέτα στην κεφαλίδα για τη δημιουργία ανακατευθύνσεων. Προκειμένου οι επισκέπτες του ιστότοπού σας να ενημερώνονται για την ανακατεύθυνση, θα πρέπει να συμπεριληφθεί μια αντίστοιχη ειδοποίηση στο έγγραφο HTML. Τυπικά παραδείγματα περιλαμβάνουν φράσεις όπως «Παρακαλώ περιμένετε λίγο. Θα ανακατευθυνθείτε…». Μια απλή ανακατεύθυνση domain μέσω meta refresh HTML έχει την εξής μορφή:

<meta http-equiv="refresh" content="10; url=http://www.example.com/">
html

Ζητείται από τον πελάτη να ανακατευθύνει τον τομέα μέσω της ετικέτας meta http-equiv="refresh". Ο τρόπος με τον οποίο αυτό πραγματοποιείται μπορεί να καθοριστεί στο χαρακτηριστικό content. Στο παράδειγμα, οι χρήστες ανακατευθύνονται στον τομέα προορισμού www.example.com μετά από δέκα δευτερόλεπτα.

Ανακατευθύνσεις JavaScript

Η JavaScript προσφέρει μια εύκολη λύση για ανακατευθύνσεις τομέα από την πλευρά του πελάτη. Ωστόσο, όπως συμβαίνει και με τη μετα-ετικέτα refresh, οι ανακατευθύνσεις μέσω JavaScript θα πρέπει να χρησιμοποιούνται μόνο κατά περίπτωση, καθώς αυτή η γλώσσα βασισμένη σε σενάρια δεν υποστηρίζεται από όλους τους περιηγητές ιστού λόγω ζητημάτων ασφαλείας. Η JavaScript μπορεί επίσης να δημιουργήσει προβλήματα στους ανιχνευτές ιστού και στους χρήστες που έχουν ενεργοποιημένα πρόσθετα NoScript. Ακολουθεί ο κώδικας για μια ανακατεύθυνση τομέα μέσω JavaScript:

<script> 
window.location.replace('http://www.example.com'); 
</script>
html

Το πιο σημαντικό εδώ είναι η τρίτη γραμμή κώδικα. Στον παράδειγμα κώδικα, η μεταβλητή window.location χρησιμοποιείται για να αναφερθεί η τρέχουσα διεύθυνση του ιστότοπου. Η εντολή replace δίνει οδηγίες στον περιηγητή να ανακατευθύνει τον χρήστη στον τομέα προορισμού που βρίσκεται μέσα στις αγκύλες: www.example.com.

Go to Main Menu