2

我正在尝试改变这一点:

/news/index.php?id=101&title=this-is-a-very-long-title

对此:

/新闻/这是一个非常长的标题/

使用 htaccess 重写规则。知道怎么做吗?

我试过了:

Options +FollowSymLinks
RewriteEngine On 
RewriteCond %{SCRIPT_FILENAME} !-d 
RewriteCond %{SCRIPT_FILENAME} !-f 
RewriteRule ^.+/news/index.php?title=$1 [NC,L,R] 
4

1 回答 1

1

我认为这是你需要的:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI}  !index\.php   [NC]
RewriteRule ^.*/([^/]+)/?   news/index.php?id=101&title=$1  [L,NC]

静默地图

http://example.com/news/this-is-a-very-long-title/带或不带斜杠

到:

http://example.com/news/index.php?id=101&title=this-is-a-very-long-title

在您的规则id=101&中,替换 URL 中不存在字符串,因此如果不需要,请将其从重写规则中删除。

对于永久且可见的重定向,请替换[L,NC][R=301,L,NC].

于 2013-02-10T05:58:00.397 回答