Я не уверен, почему люди так намеренно тупы здесь ...
То, что вы ищете, это mod_rewrite
, модуль apache для перезаписи URL.
В вашем файле .htaccess (вам может потребоваться сделать это) укажите:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^blog\/([0-9]+)\/.*$ /blog.php?post=$1 [L]
</IfModule>
Это означает, что когда вы заходите на /blog/10/any-old-bit-of-text/
за кулисы, оно идентично тому, что вы посещали /blog.php?post=10
.
Бит ([0-9] +) называется регулярным выражением (или регулярным выражением) и соответствует любому числу. .*
означает совпадение с чем угодно. ^
привязывает к началу запроса и $
привязывает к концу. косые черты (/) экранируются как \/
.