首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ShortCut网址重定向

ShortCut网址重定向
EN

Stack Overflow用户
提问于 2017-06-06 18:30:11
回答 2查看 368关注 0票数 2

直截了当地说出来。

我有这个网址:http://example.com/?open=encyclopedia&letter=s&term=storm,我希望这个快捷网址-- http://example.com/storm --重定向到第一个网址:http://example.com/?open=encyclopedia&letter=s&term=storm

我有大约1.000百科全书条款,我希望这个重定向工作的每一个学期进入。例如:如果访问者进入http://example.com/Storm,将自动重定向到此处的页面:http://example.com/?open=encyclopedia&letter=s&term=stormPlanthttp://example.com/?open=encyclopedia&letter=d&term=dried+plant

如果可能的话,我更喜欢一些htaccess解决方案。如果不是,尽你所能。我没有这方面的示例代码,因为我不知道从哪里开始。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-06 21:29:17

如果您的链接如下所示,@Croises答案是好的

mysite.com/?open=encyclopedia&letter=s&term=/storm

REQUEST_URI正在添加一个拖尾斜杠。你的链接没有一个:

mysite.com/?open=encyclopedia&letter=s&term=storm

我想这就是你要找的

代码语言:javascript
复制
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} .(.+)$

RewriteRule ^(.) ?open=encyclopedia&letter=$1&letter=%1 [NC,L]
票数 1
EN

Stack Overflow用户

发布于 2017-06-06 18:50:17

我建议您将其全部重定向到您的页面encyclopedia。然后考虑使用php可以使用它做什么(比如查找第一个字母或使用_或其他更改)

您可以使用:

代码语言:javascript
复制
RewriteEngine on
# skip all files and directories from rewrite rules below
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ encyclopedia?term=%{REQUEST_URI} [NE,L]

使用正确的第一个字母(letter=),将最后一行改为:

代码语言:javascript
复制
RewriteRule ^(.) encyclopedia?letter=$1&term=%{REQUEST_URI} [NE,L]
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44397347

复制
相关文章

相似问题

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