.htaccess-用正斜杠[regex?]
我有以下格式的xxxx的URL:.htaccess-用正斜杠[regex?],regex,.htaccess,regex-lookarounds,Regex,.htaccess,Regex Lookarounds,我有以下格式的xxxx的URL: http://www.example.com/sub/worda-wordb-wordc/123456789 http://www.example.com/sub/worda-wordb-wordc-123456789 但是,我有以下格式的URL指向我的网站的外部链接: http://www.example.com/sub/worda-wordb-wordc/123456789 我想重定向来自的所有URL http://www.example.com/sub
http://www.example.com/sub/worda-wordb-wordc/123456789
http://www.example.com/sub/worda-wordb-wordc-123456789
但是,我有以下格式的URL指向我的网站的外部链接:
http://www.example.com/sub/worda-wordb-wordc/123456789
我想重定向来自的所有URL
http://www.example.com/sub/worda-wordb-wordc/123456789
到
http://www.example.com/sub/worda-wordb-wordc-123456789
您可以使用此.htaccess
文件:
RewriteBase /
RewriteRule ^sub/(.*)/([0-9]+)$ /sub/$1-$2
现在如果您转到http://www.example.com/sub/worda-wordb-wordc/123456789
url将被重写为http://www.example.com/sub/worda-wordb-wordc-123456789
如果这不是您想要的,请在问题中添加更多详细信息。您可以使用此
.htaccess
文件:
RewriteBase /
RewriteRule ^sub/(.*)/([0-9]+)$ /sub/$1-$2
现在如果您转到http://www.example.com/sub/worda-wordb-wordc/123456789
url将被重写为http://www.example.com/sub/worda-wordb-wordc-123456789
如果这不是您想要的,请在问题中添加更多详细信息。请尝试以下操作:
重新编写引擎打开
#用最后一个斜杠重定向URI,替换为连字符
重写规则^sub/([\w-]+)/(\d+)/?$/sub/$1-$2[R=302,L]
在这里,我们检查字母、数字、下划线和连字符是否为([\w-]+)
,数字是否为(\d+)
,最后是否有可选的斜杠,是否为/?
,然后相应地重定向它
请确保将此作为第一条规则之一,然后将
302
更改为301
,以使重定向被浏览器和搜索引擎缓存。请尝试以下操作:
重新编写引擎打开
#用最后一个斜杠重定向URI,替换为连字符
重写规则^sub/([\w-]+)/(\d+)/?$/sub/$1-$2[R=302,L]
在这里,我们检查字母、数字、下划线和连字符是否为([\w-]+)
,数字是否为(\d+)
,最后是否有可选的斜杠,是否为/?
,然后相应地重定向它
确保这是您的第一条规则之一,然后将
302
更改为301
,以使重定向被浏览器和搜索引擎缓存。您可以在站点根目录中使用此规则。htaccess:
RedirectMatch 301 ^(sub)/(.*)-(\d+)/?$ /$1/$2/$3
您可以在站点根目录中使用此规则。htaccess:
RedirectMatch 301 ^(sub)/(.*)-(\d+)/?$ /$1/$2/$3
谢谢-我的意思是不要反过来重写,所以我将其改为:RewriteBase/RewriteRule^sub/(.*)-([0-9]+)$/sub/$1/$2现在输出为这将在新URL中保留原始的数字集。示例:''变为:''谢谢-本不打算反过来重写,因此我将其更改为:RewriteBase/RewriteRule^sub/(.*)-([0-9]+)$/sub/$1/$2现在输出为这将在新URL中保留原始数字集。示例:“”变为:“”为了澄清,是否要将旧的重定向到新的,然后将新的重写回旧的?请显示您当前
.htaccess
文件的内容。哦,sub
是动态的吗?sub始终是相同的。要澄清,您是否希望将旧文件重定向到新文件,然后将新文件重写回旧文件?请显示您当前.htaccess
文件的内容。噢,sub
dynamic?sub总是一样的