Это, как вы это делаете.
Options +FollowSymLinks
RewriteEngine on
RewriteRule news/(.*)/(.*)/ news.php?id=$1&title=$2
Обратите внимание на два (.*)
, как они отображаются на $ 1, а затем $ 2 на основе параметров.
URL Переписан должен выглядеть следующим образом:
http://localhost/news/1/The World Needs You/
Edit:
Чтобы заменить пробелы с дефисом. Самый простой способ сделать это состоит в следующем:
1) Обновление правила
RewriteRule news/(.*)/(.*) news.php?id=$1&title=$2
2) Доступ к URL с
/news/1/The-World-Needs-You
3) Если вы собираетесь отобразить название в твоя страница. Замените его с помощью PHP.
?php
$title = $_GET['title'];
$r = str_replace("-"," ",$title);
?
EDIT 2:
Чтобы ответить на ваш третий вопрос от комментариев
спасибо за помощь. У меня есть еще один вопрос. Например, здесь, в StachOverflow, если вы измените URL-адрес немного, он перенаправит на правильный. как йо сделать это - BrxDgr8t 1 час назад
Сначала нужно взглянуть на образец запроса здесь переполнение стека
http://stackoverflow.com/questions/41355986/url-rewrite-with-text/41356337?noredirect=1#comment69946939_41356337
В этом URL, помимо всего дополнительной информации, которая присутствует , ключом к нему является идентификатор, который присутствует после /questions/
, в данном случае 41355986
. Этот номер является уникальным идентификатором для этого вопроса, и если они используют некоторый тип базы данных SQL, запрос, чтобы получить этот вопрос будет:
Select * from questions where id = 41355986
После этого, он действительно не имеет значения, что название или URL вам потому что уникальный идентификатор - это идентификатор.Поэтому любой из следующих примеров будет указывать на этот пост, пока идентификатор {41355986}
тот же
http://stackoverflow.com/questions/41355986/url-rewrite-with-text
http://stackoverflow.com/questions/41355986/new-fake-url
Теперь, если вы решили изменить любое из чисел от вопроса идентификатора, вы будете перенаправлены на новый вопрос:
http://stackoverflow.com/questions/41355981/url-rewrite-with-text
как я заменить пространство hypens как этот HTTP: // локальный/новости/1 /, мировые потребности-вы/ – BrxDgr8t
@ BrxDgr8t Посмотрите на обновленный ответ – Yeikel
спасибо за Помогите. У меня есть еще один вопрос. Например, здесь, в StachOverflow, если вы немного измените URL-адрес, он перенаправит правильное. как сделать это – BrxDgr8t