包含相同名称的正则表达式文件夹重定向(创建循环)
Regex folder redirection containing same name (creating loop)
我正在尝试创建一个正则表达式来重定向文件夹及其内容,但我创建了一个重定向循环,因为新文件夹以同一个词开头。
我实际上把它放在 'Redirection' Wordpress 插件中,但希望应该与 mod_rewrite RewriteRule 语句相同。
意向:
FROM: /photo OR /photo/ OR /photo/anything/
TO: /photo-video /photo-video/ /photo-video/anything/
使用:
/photo(.*) /photo-video -> creates a redirect loop (keeps adding '-video')
/photo/(.*) /photo-video/ -> misses out the case without trailing /
我觉得在 /photo
之后我需要创建一个条件:[ '/' followed by (.*) ] OR [ nothing ]
(即,如果 /
之前的其他字符将不匹配)。
在正则表达式中执行此操作的正确方法:
发件人: ^/photo(/.*|$)
收件人: /photo-video
/photo -> /photo-video
/photo/ -> /photo-video/
/photo/anything -> /photo-video/anything
/photo/anything/ -> /photo-video/anything/
为您分解:
^/photo(/.*|$)
- 字符串的开头
^
- 其次是
/photo
- 之后是
/
和其他;即 /.*
- 或者,后跟字符串结尾(无)
$
我正在尝试创建一个正则表达式来重定向文件夹及其内容,但我创建了一个重定向循环,因为新文件夹以同一个词开头。 我实际上把它放在 'Redirection' Wordpress 插件中,但希望应该与 mod_rewrite RewriteRule 语句相同。
意向:
FROM: /photo OR /photo/ OR /photo/anything/
TO: /photo-video /photo-video/ /photo-video/anything/
使用:
/photo(.*) /photo-video -> creates a redirect loop (keeps adding '-video')
/photo/(.*) /photo-video/ -> misses out the case without trailing /
我觉得在 /photo
之后我需要创建一个条件:[ '/' followed by (.*) ] OR [ nothing ]
(即,如果 /
之前的其他字符将不匹配)。
在正则表达式中执行此操作的正确方法:
发件人: ^/photo(/.*|$)
收件人: /photo-video
/photo -> /photo-video
/photo/ -> /photo-video/
/photo/anything -> /photo-video/anything
/photo/anything/ -> /photo-video/anything/
为您分解:
^/photo(/.*|$)
- 字符串的开头
^
- 其次是
/photo
- 之后是
/
和其他;即/.*
- 或者,后跟字符串结尾(无)
$
- 或者,后跟字符串结尾(无)