как переписать URL с двумя переменными, используя .htaccess

Я хочу переписать его с .htaccess. У меня есть этот url:

../index.php?page=details&id=123456 

как это:

 ../detail/123456 

но я действительно не знаю, как это сделать. Не могли бы вы помочь мне переписать этот URL? или дать мне простой пример, который я могу понять, как это работает

Это должно работать:

 RewriteEngine On RewriteRule ^detail/([^/]*)$ /index.php?page=details&id=$1 [L] 
 RewriteRule ^(.*)/([0-9]+)$ index.php?page=$1&id=$2&%{QUERY_STRING} 

Первая (. *) Выбирает любую строку, например «детали». ([0-9] +) ловит номер, в вашем случае «123456»

в заключение

 &%{QUERY_STRING} 

гарантирует, что дополнительные параметры добавляются и на ваш backendscript.

Вот пример, который я использую для своей веб-страницы, когда он находится в подкаталоге.

 # "learn/degree/index.php?d=mathematics" shows as "learn/degree/mathematics" RewriteRule ^learn/degree/([a-zA-Z_-]+)$ learn/degree/index.php?d=$1 

Чтобы завершить его, не забудьте записать в начале страницы:

 RewriteBase / RewriteEngine On 

Вот «полный» .htaccess, который я использую на своей странице, чтобы дать вам некоторую идею.

 #Redirect any www. to the page without it. Helps to keep user logged. RewriteBase / RewriteEngine On rewriteCond %{HTTP_HOST} ^www.newfutureuniversity.org [NC] rewriteRule ^(.*)$ http://newfutureuniversity.org/$1 [R=301,L] Options +Indexes Options +FollowSymlinks # Finally working. Rewrite the user so "/student/Username" will internally be "/student/?user=Username" RewriteRule ^student/([a-zA-Z0-9_-]+)$ student/index.php?user=$1 # Rewrite the disciplines so "learn/degree/1" will internally be "learn/degree/index.php?dis=1" RewriteRule ^learn/degree/([1-4])$ learn/degree/index.php?dis=$1 # Rewrite the degrees so "learn/degree/mathematics" will internally be "learn/degree/index.php?d=mathematics" RewriteRule ^learn/degree/([a-zA-Z_-]+)$ learn/degree/index.php?d=$1 # Rewrite the degrees so "learn/subject/2/5/7" will internally be "learn/subject/index.php?class=2&div=5&section=7" RewriteRule ^learn/subject/([0-9])$ learn/subject/index.php?class=$1 RewriteRule ^learn/subject/([0-9])/([0-9])$ learn/subject/index.php?class=$1&div=$2 RewriteRule ^learn/subject/([0-9])/([0-9])/([0-9])$ learn/subject/index.php?class=$1&div=$2&section=$3 

Вы должны сделать ссылки на ../detail/123456 , тогда сценарий интерпретирует его внутри, как ../index.php?page=details&id=123456 . Если вы этого не хотите, вы ищете перенаправление.

Попробуй это

 <IfModule mod_rewrite.c> RewriteEngine on Options +FollowSymlinks # RewriteBase / add this if necessery, commented intentionally RewriteRule ^detail/([0-9]+)$ index.php?page=details&id=$2 </IfModule>