Если вы просто хотите отправить дату в дружественном формате, это довольно простое перенаправление:
# Untested example
RewriteEngine On
RewriteRule ^events/(\d{2})/(\d{2})/(\d{4})/.* events.php?date=$3-$2-$1
Однако mod_rewrite не будет творить чудеса.Нет никакого способа получить 10
от 01/01/2011/summer-trip
.
Редактировать: Полагаю, я не должен понимать вопрос буквально и давать некоторые подсказки.Если вы хотите связать события дружественной строкой, вам нужно сделать пару внутренних изменений:
Добавить новый столбец в таблицу событий в вашей базе данных и сделать его уникальным (чаще всегоСУБД позволяют создавать уникальные индексы).Этот новый столбец (назовем его url_title
) будет содержать дружественную строку.
Настройте ваш PHP-скрипт таким образом, чтобы он принимал url_title
в качестве аргумента, а не числовой ключ.
И ваше правило mod_rewrite будет примерно таким:
# Again, untested
RewriteEngine On
RewriteRule ^events/\d{2}/\d{2}/\d{4}/([^/]+)/?$ events.php?url_title=$1 [L]