如何在URL中捕获逗号分隔的十六进制值并使用Htaccess重写用逗号替换逗号

时间:2019-06-29 02:00:51

标签: apache .htaccess

我正在尝试通过使用Htaccess重写将旧网址重定向到新网址。我要重定向的旧网址包含用逗号分隔的十六进制值。网址中可以包含1-5个十六进制值。

旧网址:

/colors/8e39ef,3626af,3169d1,ffffff,ff00ff/

最终网址:

/hex/8e39ef-3626af-3169d1-ffffff-ff00ff/

我的起始正则表达式是:\/colors\/([0-9A-Za-z -]+)(,[0-9A-Za-z -]+)*\/,但我不知道从这里去哪里。

1 个答案:

答案 0 :(得分:0)

尝试一下

RewriteRule colors hex
RewriteRule (.*),(.*) $1-$2 [N,DPI]
RewriteRule (.*) http://example.com/$1 [R=301]

您可以将http://example.com更改为适当的域

输入URL

  

http://local.colorify.com/colors/sdfd,sdfadsfds,adsfasdf/

应用重写后的网址

  

http://local.colorify.com/hex/sdfd-sdfadsfds-adsfasdf/