首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.htaccess重定向以符号结尾的urls

.htaccess重定向以符号结尾的urls
EN

Stack Overflow用户
提问于 2014-06-19 11:19:20
回答 1查看 324关注 0票数 1

我想重定向一个url,它在上次斜杠后有4-5个字符,并且在它的末尾也有一个+。(注意:-- +符号长度不计)

我能够使它工作在4-5个字符的条件下:

代码语言:javascript
复制
RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /(index\.php)?\?id=([0-9a-zA-Z]{4,5}+)([^\ ]*)
RewriteRule ^ /%3?%4 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-zA-Z]{4,5}+)/?$ someFile.php?id=$1 [L,QSA]

虽然我尝试了条件+,但([0-9a-zA-Z\+]{4,5}+)不能使它工作,但条件([0-9a-zA-Z\+]{4,5}+)仍然可以工作,如果在最后没有+符号。

示例:

发自:

代码语言:javascript
复制
http://example.com/1234+

至:

代码语言:javascript
复制
http://example.com/someFile.php?id=1234

注意:只有在最后有一个+时,才会重定向。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-19 11:28:19

您需要转义+,因为它是一个特殊的正则符号。

代码语言:javascript
复制
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-zA-Z]{4,5})\+?/?$ someFile.php?id=$1 [L,QSA]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24305311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档