直截了当地说出来。
我有这个网址: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=storm或Plant到http://example.com/?open=encyclopedia&letter=d&term=dried+plant
如果可能的话,我更喜欢一些htaccess解决方案。如果不是,尽你所能。我没有这方面的示例代码,因为我不知道从哪里开始。
发布于 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
我想这就是你要找的
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} .(.+)$
RewriteRule ^(.) ?open=encyclopedia&letter=$1&letter=%1 [NC,L]发布于 2017-06-06 18:50:17
我建议您将其全部重定向到您的页面encyclopedia。然后考虑使用php可以使用它做什么(比如查找第一个字母或使用_或其他更改)
您可以使用:
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=),将最后一行改为:
RewriteRule ^(.) encyclopedia?letter=$1&term=%{REQUEST_URI} [NE,L]https://stackoverflow.com/questions/44397347
复制相似问题