我正在尝试重写以下网址
http://example.com/Articles/32423324/this_is_a_test_article 至 http://example.com/Articles/this-is-a-test-article
到目前为止,我已经尝试了以下组合(请参阅下面所有在我的htaccess中注释掉的内容)但是没有一个能给我带来删除数字目录并将下划线更改为连字符所需的效果。
<IfModule mod_rewrite.c>
Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase /
#REMOVE DIRECTORY MADE OF NUMBERS AFTER ARTICLES
#RewriteRule ^Articles/([0-9]+)$ /Articles/ [R=302,L]
#RewriteRule ^Articles/([0-9]+)/$ /Articles/$1 [R=302,L]
#RewriteRule ^Articles/([0-9]+)/(.*)$ /Articles/$1 [R=302,L]
#RewriteRule ^Articles/([0-9]+)/(.*)$ /$1 [L,NC,R]
#RewriteRule ^Articles/([0-9]+)/(.*)$ Articles/$1 [L,NC,R]
#RewriteRule ^Articles/([0-9]+)/$ Articles/$1 [L,NC,R]
#RewriteRule ^Articles/([0-9]+)/$ /Articles/$1 [R,L]
</IfModule>
答案 0 :(得分:0)
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此代码:
RewriteEngine On
RewriteBase /
RewriteRule ^([^/]+)/(?:\d+/)?([^_]*)_+([^_]*_.*)$ $1/$2-$3 [L,NE]
RewriteRule ^([^/]+)/([^_]*)_([^_]*)$ /$1/$2-$3 [L,R=302,NE]