首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从动态页面url到带有变量的静态.htaccess

从动态页面url到带有变量的静态.htaccess
EN

Stack Overflow用户
提问于 2017-10-08 21:40:50
回答 1查看 70关注 0票数 0

我想创建一个动态规则(可能是.htaccess的),将页面从以下位置重定向:

代码语言:javascript
复制
https://www.example.com/dir/search?q=stack+overflow

代码语言:javascript
复制
https://www.example.com/dir/stack-overflow

我知道我需要一个/dir文件夹

我试着用这个

代码语言:javascript
复制
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*)\. search?q=$1

不起作用。

EN

回答 1

Stack Overflow用户

发布于 2017-10-10 04:00:43

我假设您的意思是从/dir/search?q=stack-overflow/dir/stack-overflow的301重定向,也就是说,如果用户输入https://www.example.com/dir/search?q=stack-overflow,浏览器的URL将更改为https://www.example.com/dir/stack-overflow。问题是,/dir/stack-overflow是一个真实的文件夹或文件吗?我不这么认为,因此您必须将/dir/stack-overflow重写回/dir/search?q=stack-overflow

代码语言:javascript
复制
Options +FollowSymLinks
RewriteEngine On

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{QUERY_STRING} ^q=([^&]*)
RewriteRule ^/?dir/search/?$ /dir/%1 [R=301,L]

RewriteCond %{REQUEST_URI} !^/?dir/search/?$ [NC]
RewriteRule ^/?dir/([^/?]+)/?$ /dir/search?q=$1 [L]

如果你不想重写,也不想删除最后两行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46631729

复制
相关文章

相似问题

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