Переписывание URL-адресов с использованием .htaccess для PHP

#apache #.htaccess #url #mod-rewrite #friendly-url

#апач #.htaccess #URL-адрес #мод-переписать #дружественный url-адрес

Вопрос:

Я хочу преобразовать этот URL example.com/post.php?id=12345amp;title=xyz -адрес в example.com/12345/xyz .

Я могу это сделать example.com/12345 , но не могу получить /xyz .

 RewriteEngine On  RewriteRule ^post/([a-zA-Z0-9-/] )$ post.php?id=$1 RewriteRule ^post/([a-zA-Z-0-9-] )/ post.php?id=$1  

Ответ №1:

С показанными вами образцами, пожалуйста, попробуйте следовать правилам htaccess. Пожалуйста, не забудьте очистить кэш вашего браузера перед тестированием ваших URL-адресов.

Это решение предполагает, что вы нажимаете example.com/post.php?id=12345amp;title=xyz пример URL-адреса в браузере и хотите изменить его на example.com/12345/xyz

 ##Enabling engine here. RewriteEngine ON ##Extrenal redirect 301 to mentioned url by OP in question. RewriteCond %{THE_REQUEST} s/post.php?id=([^amp;]*)amp;title=(S )s [NC] RewriteRule ^ %1/%2? [R=301,L]  ##Internal rewrite to post.php with query strings. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^/]*)/([^/]*)/?$ post.php?id=$1amp;title=$2 [QSA,L]