1

我想更改我的网址

http://www.abc.com/search_result.php?id=110

to

http://www.abc.com/110

这是我正在使用的代码。

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+search_result\.php\?id=([^\s]+) [NC]
RewriteRule ^ http://abc.com/%1? [R=301,L]

但问题是,网址更改为http://www.abc.com/110 ,但页面保持不变。

请任何人帮助!

我还想问一件事。假设我想在原始网址中添加更多参数:说,

http://www.abc.com/search_result.php?id=110&name=amit

那么我应该怎么做才能得到结果。

http://www.abc.com/i-am-amit

谢谢 !

4

1 回答 1

1

您还需要一个内部重写规则来显示来自search_result.php

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+search_result\.php\?id=([^&\s]+)\s [NC]
RewriteRule ^ http://abc.com/%1? [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/?$ search_result.php?id=$1 [NC,L,QSA]

还有http://www.abc.com/search_result.php?id=110&name=amit你想要漂亮的 URL 是什么?请记住,您需要在漂亮的 URL 中同时使用 id 和 name,例如:

http://www.abc.com/110/amit

这是你想要的吗?

于 2013-10-03T06:08:26.843 回答