Πώς να ανακατευθύνετε σε άλλη σελίδα στην PHP. Πώς να ορίσετε μια ανακατεύθυνση σε μια άλλη διεύθυνση URL στην PHP πριν φορτώσει η σελίδα

Πόσο συχνά χρειάζεται να ανακατευθύνετε τον χρήστη σε άλλη σελίδα; Είμαι σίγουρος ότι δεν είναι ασυνήθιστο. Για την πραγματοποίηση αυτής της εργασίας χρησιμοποιούνται διάφορες μέθοδοι.

Ανακατεύθυνση σε javascript

Στη σελίδα από την οποία θέλετε να ανακατευθύνετε τον χρήστη, ορίστε τον ακόλουθο κώδικα:

window.location.href = "http://www.site"

Αντί για http://www.site, καθορίστε τη σελίδα στην οποία θα πρέπει να ανακατευθυνθεί ο χρήστης. Η μέθοδος δεν λειτουργεί εάν η Javascript δεν είναι ενεργοποιημένη στο πρόγραμμα περιήγησης. Όμως, όπως δείχνει η πρακτική, σχεδόν όλοι οι χρήστες του ιστότοπου έχουν ενεργοποιημένη τη Javascript. Ταυτόχρονα όμως είναι απενεργοποιημένο για ρομπότ αναζήτησης.

Ανακατεύθυνση χρησιμοποιώντας τη μετα-ετικέτα ανανέωσης

Ας εκμεταλλευτούμε ετικέτες html. Η ετικέτα που υποδεικνύει τον χρόνο ανανέωσης της σελίδας μοιάζει με αυτό:

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

< meta http-equiv = "refresh" content = "0;url=http://www.сайт" />

Το μειονέκτημα της ανακατεύθυνσης με ετικέτες και javascript είναι ότι αν μετακινηθεί ο ιστότοπος, αλλάξει ο τομέας ή μετακινηθούν αρχεία, το άρθρο παραμένει το ίδιο για τον χρήστη, αλλά όχι για τις μηχανές αναζήτησης. Επομένως, όταν μετακινείτε έναν ιστότοπο, δεν μπορείτε απολύτως να χρησιμοποιήσετε αυτές τις μεθόδους, καθώς ο κύριος ιστότοπος θα πέσει έξω από τα αποτελέσματα αναζήτησης λόγω του κενού του και ο νέος ιστότοπος δεν θα εμφανίζεται στα αποτελέσματα λόγω "λογοκλοπής". Ναι, ναι, οι μηχανές αναζήτησης θα αξιολογήσουν τον ιστότοπο ως λογοκλοπή. Και αυτός ο ιστότοπος έκλεψε περιεχόμενο από τον προηγούμενο ιστότοπό σας. Οι λογοκλοπές είναι σημαντικά χαμηλότεροι στα αποτελέσματα αναζήτησης. Μην κάνετε λάθη.

Ανακατεύθυνση εργαλείου PHP

Όλα είναι απλά εδώ. Πρέπει να στείλετε την κατάλληλη κεφαλίδα http

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

Επομένως, μην ξεχάσετε να καθορίσετε τις απαραίτητες κεφαλίδες http κατά τη μεταφορά υλικών.

Προώθηση με μέσα διακομιστής apache(.htaccess)

Ίσως το πιο πολύ βολικό τρόποανακατευθύνει. Ένα παράδειγμα ανακατεύθυνσης σε νέο τομέα:

Έτσι, ανακατευθύνουμε το αίτημα από το αρχείο old.htm, που βρίσκεται στον ριζικό κατάλογο του ιστότοπου, στο αρχείο rewrite.html, που βρίσκεται στον κατάλογο newcategory.

Όπως έχετε ήδη παρατηρήσει (και όσοι δεν είχαν χρόνο έχουν ακόμα μια τελευταία ευκαιρία), το RewriteRule υποστηρίζει κανονικές εκφράσεις, που σας επιτρέπει να κάνετε ό,τι θέλετε με την ανακατεύθυνση.
Για παράδειγμα, έφτιαξα ένα αρχείο .htm με εικόνα (RewriteRule ^(.*).htm$ $1.jpg), π.χ. από τη διεύθυνση dog.htm το πρόγραμμα περιήγησης με ανακατεύθυνε στην εικόνα dog.jpg. Δεν θέλω να περιγράψω όλες τις δυνατότητες της ενότητας mod_rewrite, με τη βοήθεια της οποίας δουλεύαμε τώρα. Έχουν γραφτεί πολλά σεμινάρια σχετικά με αυτό, αλλά αν θέλετε, μπορείτε να το αναζητήσετε μόνοι σας Επιπλέον πληροφορίεςσχετικά με αυτό. (Για παράδειγμα, στις , ωστόσο, στις αγγλική γλώσσα.)

Το πλεονέκτημα αυτής της μεθόδου είναι η ανώδυνη. Δηλαδή, η μεταφορά υλικού και η επακόλουθη ανακατεύθυνση από την παλιά διεύθυνση στη νέα δεν θα επηρεάσει σε καμία περίπτωση τη θέση του ιστότοπου στις μηχανές αναζήτησης. Το σύστημα λειτουργεί το ίδιο με τις ανακατευθύνσεις php, εκτός από το ότι δεν απαιτεί εγκατάσταση php. Υπάρχει όμως και ένα μείον: η ανακατεύθυνση μέσω mod-rewrite φορτώνει τον διακομιστή λίγο περισσότερο από την ίδια ανακατεύθυνση μέσω php. Και η ενότητα mod-rewrite δεν είναι πάντα εγκατεστημένη στον Apache. Αν και οι περισσότεροι οικοδεσπότες το εγκαθιστούν τώρα, εξακολουθούν να υπάρχουν μεμονωμένες κλινικές περιπτώσεις όπου αυτή η ενότητα δεν είναι εγκατεστημένη.

Επιλέξτε τη μέθοδο που σας ταιριάζει καλύτερα και εγκαταστήστε την στον ιστότοπό σας!

Οποιοσδήποτε μπορεί να στείλει. Αλλά η σωστή ανακατεύθυνση είναι μια ολόκληρη τέχνη. Αλλά η ανακατεύθυνση των χρηστών στο σωστό μονοπάτι στο Διαδίκτυο είναι ακόμη πιο δύσκολη. Μια ανακατεύθυνση σε php είναι η καταλληλότερη για αυτό.

Τι είδους ανακατεύθυνση;

Στον προγραμματισμό ιστού, προκύπτουν καταστάσεις όταν πρέπει να ανακατευθύνετε έναν χρήστη ακολουθώντας έναν σύνδεσμο σε άλλη διεύθυνση. Φυσικά, με την πρώτη ματιά, η εφαρμογή μιας τέτοιας ανακατεύθυνσης φαίνεται λίγο «παράνομη». Στην πράξη, μια τέτοια ανακατεύθυνση είναι σε ζήτηση όχι μόνο μεταξύ των εισβολέων, αλλά και μεταξύ των ειλικρινών webmasters:

Σε ποιες περιπτώσεις μπορεί να απαιτείται ανακατεύθυνση:

  • Όταν αντικαθίσταται η μηχανή τοποθεσίας, η αρχιτεκτονική ολόκληρου του πόρου αλλάζει ως αποτέλεσμα. Τότε προκύπτει το πρόβλημα του τρόπου πραγματοποίησης μιας ανακατεύθυνσης.
  • Όταν η δομή ενός πόρου επανασχεδιάζεται, προστίθενται, διαγράφονται ή μεταφέρονται ολόκληρες ενότητες ή ένα υλικό. Ενώ συμβαίνει αυτή η διαδικασία, είναι προσωρινά δυνατή η ανακατεύθυνση του χρήστη στην επιθυμητή ενότητα.
  • Εάν ο ιστότοπος άλλαξε πρόσφατα Ονομα τομέα– μετά την αλλαγή του ονόματος τομέα, το παλιό θα εξακολουθεί να εμφανίζεται στο Αποτελέσματα αναζήτησης. Σε αυτήν την περίπτωση, ο χρήστης θα ανακατευθυνθεί στον νέο τομέα μηχανή αναζήτησηςαυτομάτως;
  • Κατά τη διαδικασία εξουσιοδότησης, κατά κανόνα, σε έναν μεγάλο ιστότοπο υπάρχουν δύο ομάδες χρηστών: απλοί επισκέπτες και διαχειριστές πόρων. Σε αυτήν την περίπτωση, είναι λογικό να υλοποιηθεί μια ανακατεύθυνση για κάθε χρήστη σύμφωνα με τα δικαιώματα και τον ρόλο του. Μετά την εξουσιοδότηση, ο διαχειριστής ή οι συντονιστές του ιστότοπου μεταβαίνουν στο τμήμα διαχείρισης του πόρου και οι επισκέπτες πηγαίνουν στο τμήμα χρήστη του πόρου.
Δυνατότητες ανακατεύθυνσης σε php

Σε αντίθεση με άλλους php γλώσσεςέχει ορισμένα πλεονεκτήματα στην υλοποίηση μιας ανακατεύθυνσης:

  • Η Php είναι μια γλώσσα προγραμματισμού από την πλευρά του διακομιστή. Επομένως, η ανακατεύθυνση δεν θα γίνει στον κώδικα html των σελίδων που εμφανίζονται στο πρόγραμμα περιήγησης, αλλά σε ένα σενάριο που φιλοξενείται στον διακομιστή.
  • Η ανακατεύθυνση σε php μπορεί να υλοποιηθεί με διάφορους τρόπους. Το οποίο επεκτείνει σημαντικά την εφαρμογή του.
  • Λόγω της επεξεργασίας δεδομένων στον διακομιστή, η ανακατεύθυνση που υλοποιείται με χρήση PHP είναι λιγότερο επιρρεπής στις επιπτώσεις των φίλτρων των μηχανών αναζήτησης.

Για ανακατεύθυνση στην PHP, χρησιμοποιείται η συνάρτηση header(). Χρησιμοποιείται για την αποστολή της κεφαλίδας http. Η σύνταξή του είναι:

κενή κεφαλίδα (συμβολοσειρά $string [, bool $replace = true [, int $http_response_code ]])

Ορίσματα που γίνονται δεκτά από τη συνάρτηση:


  • string $string – συμβολοσειρά κεφαλίδας;

Υπάρχουν δύο τύποι αυτού του επιχειρήματος. Το πρώτο είναι για την αποστολή του κωδικού κατάστασης σύνδεσης. Ξεκινά με "HTTP/". Ο άλλος τύπος στέλνει έναν κωδικό κατάστασης (REDIRECT 302) στο πρόγραμμα περιήγησης πελάτη μαζί με την κεφαλίδα. Αυτό το όρισμα ξεκινά με "Τοποθεσία:"


  • Το bool $replace είναι ένα προαιρετικό χαρακτηριστικό του τύπου bool . Υπεύθυνος για την παράκαμψη της προηγούμενης κεφαλίδας. Εάν οριστεί σε true , η προηγούμενη κεφαλίδα ή οι κεφαλίδες του ίδιου τύπου θα αντικατασταθούν. Εάν το όρισμα οριστεί σε false, τότε η κεφαλίδα δεν θα ξαναγραφεί. Από προεπιλογή, αυτή η τιμή έχει οριστεί σε true ;
  • http_response_code – το όρισμα επιβάλλει τον κώδικα απόκρισης HTTP. Η εγκατάσταση του κώδικα θα είναι επιτυχής με την προϋπόθεση ότι το όρισμα συμβολοσειράς δεν είναι κενό.

Ο κωδικός κατάστασης HTTP είναι μέρος η πάνω σειράαπάντηση διακομιστή. Ο κωδικός αποτελείται από τρεις αριθμούς, ακολουθούμενο από ένα επεξηγηματικό κείμενο στα αγγλικά. Το πρώτο ψηφίο είναι υπεύθυνο για την κατηγορία κατάστασης. Η ανακατεύθυνση αντιστοιχεί σε κωδικούς από 300 έως 307. Πλήρης περιγραφήμπορείτε να βρείτε στη σχετική τεχνική τεκμηρίωση.

Όταν χρησιμοποιείτε τη συνάρτηση header() για ανακατεύθυνση εξωτερικών συνδέσμων μεγάλης σημασίαςέχει την τοποθεσία της κλήσης του. Στον κώδικα θα πρέπει να βρίσκεται πάνω από όλες τις ετικέτες html:


Χρησιμοποιώντας την ανακατεύθυνση header().

Για επίδειξη της λειτουργίας σε τοπικός διακομιστήςπρέπει να δημιουργήσετε δύο αρχεία. Ας ονομάσουμε ένα από αυτά redirect.php και το άλλο redirect2.php. Μέσα στην πρώτη θα πραγματοποιήσουμε μια κλήση συνάρτησης με την ακόλουθη μορφή:

Σε άλλο αρχείο βάζουμε τη γραμμή:

echo "Γεια σας! Βρίσκεστε στο αρχείο redirect2.php";


Μερικά πιο πρακτικά παραδείγματα χρήσης ανακατεύθυνσης σε php:

  • Αναγκαστική μεταφορά κωδικού κατάσταση http– όταν χρησιμοποιείται το πρώτο όρισμα της συνάρτησης header() τύπου «location», από προεπιλογή ο κωδικός κατάστασης «302» (προσωρινά μετακινήθηκε) μεταβιβάζεται στην κεφαλίδα. Αυτό μπορεί να αποτελέσει πρόβλημα κατά τη μετακίνηση ενός πόρου σε άλλο όνομα τομέα. Στις μηχανές αναζήτησης, μια τέτοια προσωρινή ανακατεύθυνση μπορεί να διαρκέσει περισσότερο. Εξάλλου, η μηχανή αναζήτησης αναλύει συνεχώς τον κωδικό κατάστασης. Και λέει "προσωρινά μετακόμισε". Παράδειγμα αναγκαστικής επανεγγραφής του κωδικού κατάστασης "302" σε "301" (μετακινήθηκε μόνιμα):

Η επανεγγραφή είναι επίσης δυνατή σε δύο στάδια. Η πρώτη γραμμή ξαναγράφει τον κωδικό κατάστασης και η δεύτερη ανακατευθύνει σε μια νέα διεύθυνση:

  • Χρήση ανακατεύθυνσης εξωτερικών συνδέσμων για ανακατεύθυνση ανάλογα με τον ρόλο του χρήστη. Ο ρόλος καθορίζεται κατά τη διαδικασία ελέγχου ταυτότητας. Η τιμή προς επεξεργασία γράφεται στη μεταβλητή $who:

Πιέστε με

Κωδικός αρχείου Redirect3.php:


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

Ας υποθέσουμε ότι θέλετε να εμφανίσετε τη σελίδα https://example.com/final.php σε χρήστες που πλοηγούνται στη σελίδα https://example.com/initial.php. Αυτό μπορεί να γίνει με λίγα Μέθοδοι PHP, JavaScript και HTML. Σε αυτό το άρθρο, θα καλύψουμε καθεμία από τις μεθόδους που μπορείτε να χρησιμοποιήσετε για να ανακατευθύνετε την PHP σε άλλη σελίδα.

Εδώ είναι μερικές μεταβλητές που θα χρησιμοποιήσουμε:

Χρησιμοποιώντας τη λειτουργία Επικεφαλίδα PHP() για να ανακατευθύνετε τη διεύθυνση URL

Εάν θέλετε να προσθέσετε μια ανακατεύθυνση από το αρχικό.php στο final.php, μπορείτε να τοποθετήσετε τον ακόλουθο κώδικα στην ιστοσελίδα του αρχικού.php. Στέλνει μια νέα κεφαλίδα τοποθεσίας στο πρόγραμμα περιήγησης:

Εδώ χρησιμοποιούμε τη συνάρτηση PHP header() για να δημιουργήσουμε την ανακατεύθυνση. Πρέπει να τοποθετήσετε αυτόν τον κώδικα πριν από οποιοδήποτε HTML ή κείμενο. Διαφορετικά, θα λάβετε ένα μήνυμα σφάλματος ότι η κεφαλίδα έχει ήδη σταλεί. Μπορείτε επίσης να χρησιμοποιήσετε την προσωρινή μνήμη εξόδου για να αποτρέψετε αυτό το σφάλμα αποστολής κεφαλίδων. Στο παρακάτω παράδειγμα αυτή τη μέθοδοΟι ανακατευθύνσεις PHP εμφανίζονται σε δράση:

Για να εκτελέσετε μια ανακατεύθυνση χρησιμοποιώντας τη συνάρτηση header(), η συνάρτηση ob_start() πρέπει να είναι η πρώτη συνάρτηση στο σενάριο PHP. Αυτό θα αποτρέψει την εμφάνιση σφαλμάτων κεφαλίδας.

Ως πρόσθετο μέτρο, μπορείτε να προσθέσετε die() ή exit() αμέσως μετά την ανακατεύθυνση της κεφαλίδας, έτσι ώστε να μην εκτελείται ο υπόλοιπος κώδικας της ιστοσελίδας. Σε ορισμένες περιπτώσεις ρομπότ αναζήτησηςή τα προγράμματα περιήγησης ενδέχεται να μην δίνουν προσοχή στην κεφαλίδα Τοποθεσία. Ποιες είναι οι πιθανές απειλές για την ασφάλεια του ιστότοπου:

Για να είμαστε σαφείς: η die() ή η exit() δεν έχουν καμία σχέση με τις ανακατευθύνσεις. Χρησιμοποιούνται για να αποτρέψουν την εκτέλεση του υπόλοιπου κώδικα στην ιστοσελίδα.

Κατά την ανακατεύθυνση σε μια σελίδα στην PHP, συνιστάται να χρησιμοποιείτε απόλυτες διευθύνσεις URL κατά τον καθορισμό της τιμής της κεφαλίδας τοποθεσίας. Αλλά οι σχετικές διευθύνσεις URL θα λειτουργήσουν επίσης. Μπορείτε επίσης να χρησιμοποιήσετε αυτήν τη δυνατότητα για να ανακατευθύνετε τους χρήστες σε εξωτερικούς ιστότοπους ή ιστοσελίδες.

συμπέρασμα Κώδικας JavaScript-ανακατεύθυνση χρησιμοποιώντας τη συνάρτηση PHP echo().

Αυτή δεν είναι μια καθαρή λύση PHP. Ωστόσο, είναι επίσης αποτελεσματικό. μπορείς να χρησιμοποιήσεις Λειτουργία PHP echo() για την έξοδο του κώδικα JavaScript που θα χειριστεί την ανακατεύθυνση.

Εάν χρησιμοποιείτε αυτήν τη λύση, δεν θα χρειαστεί να χρησιμοποιήσετε προσωρινή αποθήκευση εξόδου. Αυτό αποτρέπει επίσης την εμφάνιση σφαλμάτων που σχετίζονται με την αποστολή κεφαλίδων.

Παρακάτω είναι μερικά παραδείγματα που χρησιμοποιούν διαφορετικές μεθόδους JavaScript για ανακατεύθυνση με τρέχουσα σελίδασε άλλο:

Το μόνο μειονέκτημα αυτής της μεθόδου ανακατεύθυνσης σε άλλη τοποθεσία PHP είναι ότι το JavaScript εκτελείται στην πλευρά του πελάτη. Και οι επισκέπτες σας μπορεί να έχουν απενεργοποιημένη τη JavaScript.

Χρήση μετα-ετικέτες HTML για ανακατεύθυνση

Μπορείτε επίσης να χρησιμοποιήσετε βασικό HTML για να εκτελέσετε την ανακατεύθυνση. Μπορεί να φαίνεται αντιεπαγγελματικό, αλλά λειτουργεί. Και δεν χρειάζεται να ανησυχείτε για την απενεργοποίηση της JavaScript στο πρόγραμμα περιήγησής σας ή την αποστολή σφάλματος κεφαλίδων στο παρελθόν:

Μπορείτε επίσης να χρησιμοποιήσετε την τελευταία γραμμή από το προηγούμενο παράδειγμα για να ανανεώνετε αυτόματα τη σελίδα κάθε "n" δευτερόλεπτα. Για παράδειγμα, ο ακόλουθος κώδικας θα ανανεώνει αυτόματα τη σελίδα κάθε 8 δευτερόλεπτα:

συμπέρασμα

Σε αυτό το άρθρο κάλυψα τρία διάφορες μεθόδουςανακατευθύνει από ευρετήριο php, καθώς και τα πλεονεκτήματα και τα μειονεκτήματά τους. Η συγκεκριμένη μέθοδος που θα χρησιμοποιηθεί εξαρτάται από τους στόχους του έργου.

Μετάφραση του άρθρου «Πώς μπορώ να κάνω μια ανακατεύθυνση σε διαφορετικό url πριν από τη φόρτωση της σελίδας στην PHP» από τη φιλική ομάδα έργου.

Καλό κακό

12:06 μ.μ. - Πώς να ανακατευθύνω τον χρήστη σε άλλη σελίδα;

Υπάρχουν διάφορες λύσεις:
1) javascript
2) HTML
3) php
4) .htaccess

1) εδώ είναι ένα παράδειγμα κώδικα για γλώσσα javascript:

Type="text/javascript">

Το μόνο που χρειάζεται να κάνετε είναι να δημιουργήσετε ένα αρχείο index.htm (ή index.html ή index.php - ΕΝΑ από αυτά! αυτό είναι σημαντικό) και να βάλετε τον κώδικα σε αυτό, αφού αντικαταστήσετε το http://www.mysite.com/ με τη διεύθυνση του ιστότοπού σας.
Μπορείτε να καθορίσετε τη διαδρομή προς έναν φάκελο ή απευθείας σε ένα αρχείο, για παράδειγμα http://www.mysite.com/cat/file.php

Το πρόγραμμα περιήγησης του χρήστη θα ανακατευθυνθεί αμέσως* στη σελίδα που ορίσατε.
*αν το πρόγραμμα περιήγησης υποστηρίζει ανακατεύθυνση. Τώρα σχεδόν όλα τα προγράμματα περιήγησης υποστηρίζουν ανακατεύθυνση, εκτός εάν το πρόγραμμα περιήγησης έχει ρυθμιστεί έξυπνα από τον χρήστη =)

Για να δείξετε στον χρήστη ένα μήνυμα πριν από την ανακατεύθυνση, χρησιμοποιήστε μια διαφορετική έκδοση του σεναρίου:

type="text/javascript"> Τώρα θα μετακινηθείτε!

%Εάν το πρόγραμμα περιήγησής σας δεν υποστηρίζει ανακατεύθυνση, κάντε κλικ εδώ: %ΕΔΩ

http://somesite2.com/ -- αντικαταστήστε με τη διεύθυνση του ιστότοπού σας.

2) Για να ανακατευθύνει το πρόγραμμα περιήγησης του χρήστη χρησιμοποιώντας HTML, χρήση META tag:

http://www.blahblahblahsite.com/ -- αντικαταστήστε με τη διεύθυνση του ιστότοπού σας
10 - σημαίνει ότι το πρόγραμμα περιήγησης θα ανακατευθυνθεί μετά από 10 δευτερόλεπτα.
Ορίστε στο 0 για άμεση ανακατεύθυνση.
Εάν ορίσετε ένα χρονικό όριο, τότε στο αρχείο μπορείτε να αφήσετε ένα μήνυμα στον χρήστη, για παράδειγμα:

Σε 10 δευτερόλεπτα θα μεταφερθείτε!

Εάν το πρόγραμμα περιήγησής σας δεν υποστηρίζει ανακατεύθυνση, κάντε κλικ εδώ: %ΕΔΩ

3) Άμεση παραπομπή με χρησιμοποιώντας PHP:

http://myownsite.com/folder/ -- αντικαταστήστε με τη διεύθυνση του ιστότοπού ή της σελίδας σας.
Ο κώδικας πρέπει να τοποθετηθεί σε ένα αρχείο με επέκταση .php, για παράδειγμα index.php

4) Άμεση ανακατεύθυνση χρησιμοποιώντας .htaccess:

Όπως κάθε πρόγραμμα, ένας διακομιστής ιστού έχει ορισμένες ρυθμίσεις. Ωστόσο, εσείς, ως χρήστης του Apache, ενδέχεται να μην έχετε τα δικαιώματα να αλλάξετε τη διαμόρφωση του Apache μέσω των κύριων αρχείων του, το αποτέλεσμα των οποίων ισχύει για όλους τους χρήστες αυτού του διακομιστή. Ωστόσο, μπορείτε να αλλάξετε ορισμένα αρχεία διαμόρφωσης, τα οποία ισχύουν μόνο για τον ιστότοπό σας. Ένα από αυτά τα αρχεία είναι το .htaccess

Αυτό είναι ένα αρχείο ευέλικτες ρυθμίσειςΔιακομιστής ιστού Apache. "Ευέλικτο" σημαίνει ότι μόλις αλλάξετε κάτι σε αυτό το αρχείο, οι αλλαγές τίθενται αμέσως σε ισχύ. Στην πραγματικότητα, ο σκοπός των αρχείων .htaccess είναι να παρέχουν ένα μέσο για Ρυθμίσεις Apacheγια χρήστες που δεν μπορούν να αλλάξουν το κύριο αρχείο διαμόρφωσης httpd.conf (αυτό το αρχείο είναι το κύριο αρχείο ρυθμίσεωνΟ διακομιστής Apache και οι ενέργειές του ισχύουν πλήρως για όλους τους χρήστες αυτού του αντιγράφου του Apache).

Αυτό το αρχείο δεν είναι προσβάσιμο στον χρήστη ιστού από το πρόγραμμα περιήγησης. Εάν το αρχείο .htaccess βρίσκεται στον ριζικό κατάλογο του διακομιστή, τότε οι ενέργειές του εφαρμόζονται σε ολόκληρο τον διακομιστή, εκτός από αυτούς τους φακέλους όπου βρίσκεται άλλο αρχείο .htaccess (και εκτός από όλους τους φακέλους "κάτω" από αυτόν τον φάκελο με το δεύτερο . htaccess).

Η διαμόρφωση αρχείου .htaccess μπορεί να σας βοηθήσει διαφορετικές καταστάσεις, αλλά ακόμη και το παραμικρό συντακτικό σφάλμα (όπως η έλλειψη χώρου όπου χρειάζεται) μπορεί να προκαλέσει λανθασμένη προβολή του περιεχομένου του ιστότοπού σας ή να μην εμφανίζεται καθόλου. Εφόσον το .htaccess είναι κρυφό αρχείο συστήματοςβεβαιωθείτε ότι ο πελάτης FTP σας έχει ρυθμιστεί να εμφανίζεται κρυφά αρχεία.

Δημιουργήστε ένα κενό αρχείο κειμένουμε τη χρήση επεξεργαστής κειμένου, όπως το Σημειωματάριο και αποθηκεύστε το ως htaccess.txt. Ο λόγος για τον οποίο πρέπει να αποθηκεύσετε το αρχείο στο htaccess.txt είναι επειδή πολλοί OSκαι οι εφαρμογές FTP δεν μπορούν να διαβάσουν αρχεία .htaccess από προεπιλογή. Μετά τη μεταφόρτωση στον διακομιστή, μπορείτε να μετονομάσετε το αρχείο σε .htaccess.

Ανακατευθύνετε ολόκληρο τον ιστότοπο σε οποιονδήποτε άλλο τομέα (για παράδειγμα, το example.net ανακατευθύνεται στο example.com).

(PHP 4, PHP 5, PHP 7)

κεφαλίδα — Στείλτε μια ακατέργαστη κεφαλίδα HTTP

Περιγραφή

κεφαλίδα (string $header [, bool $replace = TRUE [, int $http_response_code ]]) : void

Η header() χρησιμοποιείται για την αποστολή μιας ακατέργαστης κεφαλίδας HTTP. Δείτε την προδιαγραφή » HTTP/1.1 για περισσότερες πληροφορίες σχετικά με τις κεφαλίδες HTTP.

Να θυμάστε ότι η κεφαλίδα() πρέπει να κληθεί πριν σταλεί οποιαδήποτε πραγματική έξοδο, είτε από κανονικές ετικέτες HTML, κενές γραμμές σε ένα αρχείο ή από PHP. Είναι πολύ συνηθισμένο σφάλμα η ανάγνωση κώδικα με συναρτήσεις συμπερίληψη ή απαίτηση , ή άλλη συνάρτηση πρόσβασης αρχείου και να υπάρχουν κενά ή κενές γραμμές που εξάγονται πριν κληθεί η κεφαλίδα(). Το ίδιο πρόβλημα υπάρχει όταν χρησιμοποιείτε ένα μόνο αρχείο PHP/HTML.


Παράμετροι

Η συμβολοσειρά κεφαλίδας.

Υπάρχουν δύο κλήσεις κεφαλίδας ειδικής περίπτωσης. Το πρώτο είναι μια κεφαλίδα που ξεκινά με τη συμβολοσειρά " HTTP/" (η υπόθεση δεν είναι σημαντική), η οποία θα χρησιμοποιηθεί για να καταλάβουμε το Κατάσταση HTTPκωδικός για αποστολή. Για παράδειγμα, εάν έχετε ρυθμίσει τον Apache να χρησιμοποιεί ένα σενάριο PHP για να χειρίζεται αιτήματα για αρχεία που λείπουν (χρησιμοποιώντας το Έγγραφο σφάλματοςοδηγία), μπορεί να θέλετε να βεβαιωθείτε ότι το σενάριό σας δημιουργεί τον σωστό κωδικό κατάστασης.

Η δεύτερη ειδική περίπτωση είναι η κεφαλίδα "Τοποθεσία:". Όχι μόνο στέλνει αυτήν την κεφαλίδα πίσω στο πρόγραμμα περιήγησης, αλλά επιστρέφει επίσης α ΔΙΕΥΘΥΝΩ ΠΑΛΙΝ(302) κωδικός κατάστασης στο πρόγραμμα περιήγησης εκτός εάν 201 ή α 3xxΟ κωδικός κατάστασης έχει ήδη οριστεί.

Αντικαθιστώ

Η προαιρετική παράμετρος αντικατάστασης υποδεικνύει εάν η κεφαλίδα πρέπει να αντικαταστήσει μια προηγούμενη παρόμοια κεφαλίδα ή να προσθέσει μια δεύτερη κεφαλίδα του ίδιου τύπου. Από προεπιλογή θα αντικατασταθεί, αλλά αν περάσετε το FALSE ως δεύτερο όρισμα, μπορείτε να επιβάλετε πολλές κεφαλίδες του ίδιου τύπου. Για παράδειγμα:

Http_response_code

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

Αξίες επιστροφής

Δεν επιστρέφεται καμία τιμή.

Καταγραφή αλλαγών Περιγραφή έκδοσης
5.1.2 Αυτή η λειτουργία αποτρέπει πλέον την αποστολή περισσότερων από μία κεφαλίδων ταυτόχρονα ως προστασία από επιθέσεις ένεσης κεφαλίδας.
Παραδείγματα

Παράδειγμα #1 Διάλογος λήψης

Αν θέλειςστον χρήστη που θα σας ζητηθεί να αποθηκεύσει τα δεδομένα που στέλνετε, όπως ένα αρχείο PDF που δημιουργείται, μπορείτε να χρησιμοποιήσετε την κεφαλίδα » Content-Disposition για να δώσετε ένα προτεινόμενο όνομα αρχείου και να αναγκάσετε το πρόγραμμα περιήγησης να εμφανίσει το παράθυρο διαλόγου αποθήκευσης.