Frage
Ich habe eine Website in PHP gemacht.
Es gibt eine Liste von Geschichten Titel in der Datenbank gespeichert und wenn der Benutzer einen Titel unter ihnen klicken dann Benutzer auf eine Seite mit einer Abfragezeichenfolge auf sie umgeleitet. wie story.php? id = 25
bedeutet diese Geschichte mit der ID 25 wird nun angezeigt gehen werden. Nun will ich URL neu zu schreiben, aber wenn ich es umschreiben es tritt ein Problem auf.
In story.php Seite lese ich den Abfrage-String wie $ _GET [ ‚id‘] .. aber nach URL-Rewriting ich bin nicht in der Lage es wie folgt zu lesen. Kann jeder Körper schlägt vor, was
zu tunLösung
Wenn Sie einige Anpassungen an Ihre URL String aus Sie könnten dies tun.
http://www.domain.com/story.php?story = 25 & title = some_name
, die nach dem neu schreiben könnte dies sein.
http://www.domain.com/25/some_name.html
Code:
RewriteEngine On
RewriteRule ^story/([^/]*)/([^/]*)\.html$ /story.php?story=$1&title=$2 [L]
Andere Tipps
Sie könnten .htaccess verwenden, um die lange URLs Server-Seite neu zu schreiben, aber nicht den umzuleiten (so es zeigt immer noch die lange URL in der Adressleiste), so etwas wie:
RewriteEngine on
RewriteRule story\/(\d+)\/(.+) story.php?id=$1
So stellen Sie lange Links aussehen www.site.com/story/25/This_is_the_title
sind