.htaccess mod_重写和动态页面

.htaccess mod_重写和动态页面,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我试着在互联网上阅读一篇关于mod_重写的教程,但这并不适合我。我创建了一个.htaccess文件,该文件目前包含以下代码: Options +FollowSymLinks Options +Indexes RewriteEngine On 据我所知,这是重写URL的.htaccess的基本设置,然后是说明。。。改变什么以及如何改变。我试过不同的例子,但对我不起作用。我有一个动态页面,urllocalhost/alpha/oferta.php?id=52042156c65d4,其中

我试着在互联网上阅读一篇关于mod_重写的教程,但这并不适合我。我创建了一个.htaccess文件,该文件目前包含以下代码:

Options +FollowSymLinks  
Options +Indexes  
RewriteEngine On  
据我所知,这是重写URL的.htaccess的基本设置,然后是说明。。。改变什么以及如何改变。我试过不同的例子,但对我不起作用。我有一个动态页面,url
localhost/alpha/oferta.php?id=52042156c65d4
,其中id=“…”是该产品的唯一id。我想将其更改为localhost/alpha/oferta/id=“…”
你能给我举个例子说明我如何做到这一点吗?另外,如果你知道任何有用的教程,请告诉我。在降级之前让我知道,以便我可以编辑我的问题。谢谢

所以您希望将此类或URL:
localhost/alpha/oferta/id=123abc
重定向到
localhost/alpha/oferta.php?id=123abc

Options +FollowSymLinks  
Options +Indexes  
RewriteEngine On  
RewriteBase /

RewriteRule ^alpha/oferta/id=([A-Za-z0-9]+)$ alpha/oferta.php?id=$1 [L]
记住几件事:

  • 不会将“旧”URL神奇地更改为“新”URL。您必须在任何地方使用重写的(“新”)URL。然后,您的htaccess将把这个可读的URL更改为技术URL,您的代码可以使用它
  • 这种重定向是透明的。如果要将URL更改为浏览器栏,请使用
    [L,R=301]
    而不是
    [L]
  • 这将只接受您的
    id
    的字母(不区分大小写)和数字
  • 你可以找到一份关于
    mod\u rewrite
    的好的备忘单