2016-10-20 6 views
0

Я хочу переписать Post.php ID = 1 & название = тест на сообщение/1/тестмод переписывание URL с двумя переменными

У меня есть этот код:

RewriteRule ^post/([^/]+)/([^/]+)/?$ post.php?id=$1&title=$2 [L,QSA] 

Это работает, только если Я переименовываю ссылки post.php в/post в моем php-файле. Я хочу переписать URL-адреса, чтобы мне не нужно было редактировать ссылки.

Подобно ниже:

RewriteCond %{THE_REQUEST} \s/+(post)\.php[?/\s] [NC] 
RewriteRule^%1 [R=301,L] 

RewriteRule ^(post)/?$ $1.php [L] 

ответ

1

Вы можете использовать:

# external redirect from actual URL to pretty one 
RewriteCond %{THE_REQUEST} \s/+post\.php\?id=([^&]+)&title=([^\s&]+) [NC] 
RewriteRule^/post/%1/%2? [R=301,L,NE] 

# internal forward from pretty URL to actual one 
RewriteRule ^post/([^/]+)/([^/]+)/?$ post.php?id=$1&title=$2 [L,QSA,NC] 

Но это неправильно сказать: "Я не нужно редактировать какие-либо ссылки". Потому что это метод для исправления старых ссылок, которые уже упоминались, а не для того, чтобы вы не изменяли свой код на своих страницах. Поскольку код HTML по-прежнему содержит плохие ссылки ...

Смежные вопросы