有没有办法使用mod_rewrite来生成下面的结果?
原始网址: 的 http://www.domain.com/shop.php?id=newyork
到
SEO友好的URL 的 http://www.domain.com/newyork
我见过很多例子,上面的网址可以转换为 http://www.domain.com/shop/newyork ,但实际上我不想显示“ shop / '所以只需 http://www.domain.com/newyork
答案 0 :(得分:2)
我有一个类似下面的东西,在我的头顶
RewriteRule ^([a-zA-Z]*)$ www.example.com/shop.php?id=$1
请记住,根域后的任何内容都将通过管道传输到您的shop.php脚本中。
答案 1 :(得分:0)
是的,在您的.htaccess文件中
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^/([^/.]+)$ shop.php?id=$1 [L]
</IfModule>
([^/.]+)
将匹配任何非/
或.
的内容并存储该信息,
最后$1
将该信息输出到您的商店脚本中。
[L]
告诉mod_rewrite停止寻找规则,如果这个规则有效。
答案 2 :(得分:0)
根据您的示例:
RewriteRule ^([a-z]+)$ /shop.php?id=$1 [L]
匹配newyork
,alaska
,hamburg
但不匹配highway-1
。