@sterios Δημοσ. 25 Μαΐου 2010 Δημοσ. 25 Μαΐου 2010 Παιδιά τα φώτα σας λίγο, θέλω - μου ζητήθηκε να αλλάξω το base url ενός site (όχι cms ούτε framework) από http://www.example/index.php σε http://www.example/index/products.php. Έχω ξανακάνει redirect σε site με htacces, αλλά από ένα domain σε άλλο. Επειδή μου φαίνεται λίγο goofy η λύση του htaccess υπάρχει κάποια λύση μέσω κάποιας function της php ή κάποια άλλη λύση? (Να αναφέρω ότι είδα στο php.net και δεν βρήκα κάτι αξιόλογο ή έτσι μου φάνηκε) Κάθε λύση ευπρόσδεκτη.
Uberalles_gr Δημοσ. 25 Μαΐου 2010 Δημοσ. 25 Μαΐου 2010 Την Index.php θα την ονομάσεις products.php και θα την βάλεις μέσα στον φάκελο index και θα γράψεις στην τωρινή σου index > header("Location: products/index.php"); έτσι όταν μπεις στην index.php θα σε δρομολογήσει με την μία στην products/index.php
@sterios Δημοσ. 25 Μαΐου 2010 Μέλος Δημοσ. 25 Μαΐου 2010 Ευχαριστώ πολύ, ήμουν σίγουρος ότι ήταν κάτι απλό!
routsounmanman Δημοσ. 27 Μαΐου 2010 Δημοσ. 27 Μαΐου 2010 Υπάρχει και άλλη λύση, την χρησιμοποιώ συχνά: Φτιάξε ένα καινούργιο αρχείο PHP και βάλε τα εξής μέσα: >class redirection{ function redirection($url, $timeout=''){ echo " <script language='javascript'> var url='".$url."'; "; if($timeout) echo "setTimeout('Redirect()',".$timeout.");\n"; else echo "Redirect(url);\n"; echo " function Redirect(url) { location.href = url; } </script> "; } } αποθήκευσέ το ώς redirection.php Για να το χρησιμοποιήσεις σε οποιοδήποτε script, κάνε include ή require το αρχείο, και κάλεσέ το με 1 ή 2 ορίσματα.
@sterios Δημοσ. 27 Μαΐου 2010 Μέλος Δημοσ. 27 Μαΐου 2010 Υπάρχει και άλλη λύση, την χρησιμοποιώ συχνά:Φτιάξε ένα καινούργιο αρχείο PHP και βάλε τα εξής μέσα: >class redirection{ function redirection($url, $timeout=''){ echo " <script language='javascript'> var url='".$url."'; "; if($timeout) echo "setTimeout('Redirect()',".$timeout.");\n"; else echo "Redirect(url);\n"; echo " function Redirect(url) { location.href = url; } </script> "; } } αποθήκευσέ το ώς redirection.php Για να το χρησιμοποιήσεις σε οποιοδήποτε script, κάνε include ή require το αρχείο, και κάλεσέ το με 1 ή 2 ορίσματα. Ευχαριστώ θα το δοκιμάσω και αυτό, αν και με την παραπάνω λύση έκανα την δουλειά μου!
dewn735 Δημοσ. 28 Μαΐου 2010 Δημοσ. 28 Μαΐου 2010 Υπάρχει και άλλη λύση, την χρησιμοποιώ συχνά:Φτιάξε ένα καινούργιο αρχείο PHP και βάλε τα εξής μέσα: >class redirection{ function redirection($url, $timeout=''){ echo " <script language='javascript'> var url='".$url."'; "; if($timeout) echo "setTimeout('Redirect()',".$timeout.");\n"; else echo "Redirect(url);\n"; echo " function Redirect(url) { location.href = url; } </script> "; } } αποθήκευσέ το ώς redirection.php Για να το χρησιμοποιήσεις σε οποιοδήποτε script, κάνε include ή require το αρχείο, και κάλεσέ το με 1 ή 2 ορίσματα. Το πρόβλημα με αυτό είναι ότι αν εγώ έχω απενεργοποιήσει τη javascript το redirection δε θα δουλέψει ποτέ...
routsounmanman Δημοσ. 28 Μαΐου 2010 Δημοσ. 28 Μαΐου 2010 Το πρόβλημα με αυτό είναι ότι αν εγώ έχω απενεργοποιήσει τη javascript το redirection δε θα δουλέψει ποτέ... Αυτο το redirection είναι πιο ευέλικτο καθώς μπορεί να ενσωματωθεί σε οποιοδήποτε σημείο της σελίδας, ανεξάρτητα από το αν έχουν σταλεί τα headers αλλά φυσικά υπάρχει και ο κίνδυνος όπως είπες κάποιος να έχει απενεργοποιημένη τη js. Επίσης, σου δείνει τη δυνατότητα για καθυστέρηση πριν το redirection, π.χ. να δείξεις μια διαφήμιση ή ενα μνμ. Τέλος, ο πιο αφαλής & σίγουρος τρόπος για (μόνιμο) redirection είναι με .htaccess καθώς εξαρτάται μόνο από το server.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.