Αν και γενικά θεωρώ τον εαυτό μου .NET Developer τον τελευταίο καιρό η αλήθεια είναι ότι κοιτάω την PHP και προσπαθώ να μάθω περισσότερα για αυτή. Έτσι είπα να γράψω και κάτι για PHP που βρήκα μετά από αρκετή αναζήτηση.
Καλό είναι όταν φτιάχνουμε κάποιο Web Site ή γενικά κάποια Web εφαρμογή οι διευθύνσεις μας να είναι Search Engine Friendly. Αυτό μας βοηθάει στο να έχουμε περισσότερους επισκέπτες από της μηχανές αναζήτησης. Έτσι αν για παράδειγμα είχαμε ένα URL σαν αυτό (http://www.chatzimanolis.gr/mytest.php?id=10) καλό θα ήταν να μπορούσαμε να το μετατρέψουμε σε αυτό (http://www.chatzimanolis.gr/mytest-10.html). Αυτό εκτός από περισσότερα hits μέσα από διάφορες μηχανές αναζήτησης θα μας πρόσφερε και την απόκρυψη της προέκτασης του αρχείου μας (.php).
Για να πετύχουμε λοιπόν το URL Rewriting χρειαζόμαστε δύο πράγματα. Το πρώτο είναι να έχουμε το module
mod_rewrite ενεργοποιημένο στον Apache, και το δεύτερο να είναι ενεργοποιημένη η επιλογή
FollowSymLinks. Αν αυτά τα δύο δεν υπάρχουν τότε θα μας εμφανιστεί ένα πολύ ωραίο 500 Internal Server Error.
Αφού λοιπόν έχουμε τα παραπάνω ενεργοποιημένα, το μόνο που χρειάζεται είναι να δημιουργήσουμε ένα
.htaccess αρχείο στο root directory στο web directory.Μέσα στο αρχείο λοιπόν χρειάζεται να γράψουμε τις παρακάτω γραμμές:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^mytest-([0-9]+)\.html$ mytest.php?id=$1
Το παραπάνω παράδειγμα λέει στον Web Server να μετατρέπει οτιδήποτε δει στην μορφή mytest.php?id=xx σε mytest-xx.html. Είναι απλό και εύκολα, αν και εμένα μου πήρε αρκετή ώρα να το βρω.