首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Nginx 301重定向渔获物

Nginx 301重定向渔获物
EN

Stack Overflow用户
提问于 2014-04-01 08:03:30
回答 1查看 1.7K关注 0票数 0

最近,我发现一些网站正在链接许多没有现存的url(缺少.html)到我的域。我将通过将所有404错误的urls指向正确的urls来降低爬行错误。

但是我很难在nginx中重定向301。

我想将domain.com/mp3/search重定向到domain.com/mp3/search.html

我的当前配置是:

代码语言:javascript
运行
复制
       location / {
rewrite ^/mp3/([^/]*).html(/?)+$ /index.php?mp3=$1;

#rewrite ^/mp3/([^/]*).html(/?)+$ /index.php?mp3=$1;
#rewrite ^/mp3/([^/]*)$ /$1.html;

}

我试过了

代码语言:javascript
运行
复制
#rewrite ^/mp3/([^/]*).html(/?)+$ /index.php?mp3=$1;

它只是创建了domain.com/mp3/搜索页面

代码语言:javascript
运行
复制
 #rewrite ^/mp3/([^/]*)$ /$1.html;

返回404

更多的例子:

代码语言:javascript
运行
复制
mp3/Rank_1_&_Dennis_Sheperd  to become  mp3/Rank_1_&_Dennis_Sheperd.html
mp3/Flashlight_ to become mp3/Flashlight_.html
mp3/Let_her_go_ to become mp3/Let_her_go_.html
mp3/Audien_-_Iris to become mp3/Audien_-_Iris.html

都有301重定向

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-01 13:01:59

我觉得你要找的重写规则是:

代码语言:javascript
运行
复制
rewrite ^/mp3/([^/]*)(?!.html)$ /mp3/$1.html permanent;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22780014

复制
相关文章

相似问题

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