解析 404 url 并使用 nginx 重定向
Posted
技术标签:
【中文标题】解析 404 url 并使用 nginx 重定向【英文标题】:Parse 404 url and redirect with nginx 【发布时间】:2018-03-24 08:57:08 【问题描述】:我正在尝试从我的论坛中删除一个 seo 插件,我有很多 404 个页面要处理。
旧的网址结构是:
http://example.com/board/technical-advice/something-interesting-t2824-15.html
...而新的是:
http://example.com/board/viewtopic.php?t=2824
所以我想解析进入 /board 文件夹的所有 404 url,并将它们重定向到新结构。
是否可以在我的 nginx 配置中执行此操作?如果有怎么办?还是有更好的地方?
【问题讨论】:
我认为这可以通过.htaccess
中的301 redirect
来完成
使用您的 .htaccess 将 URL 重定向规则永久写入新的 URL 结构
我宁愿在数据库中做一个替换。或者 - 如果您使用现有的 CMS - 看看那里的路由。
nginx 小伙子的。 NGINX,里面没有.htaccess
正如@UnamataSanatarai 指出的那样,nginx 没有 htaccess,而在 apache 中的 htaccess 中会做什么,就是我在 nginx 中寻找的东西
【参考方案1】:
如果这只是您需要做的一种格式,那么您可以在下面使用
http://example.com/board/technical-advice/something-interesting-t2824-15.html http://example.com/board/viewtopic.php?t=2824
rewrite "^/board/[^/]+/[a-z0-9-]t(\d+).*\.html$" /board/viewtopic.php?t=$1 redirect;
如果有很多重定向,那么您应该使用@RichardSmith 在下面文章的 cmets 中建议的方法
Nginx rewrite urls with special characters
【讨论】:
以上是关于解析 404 url 并使用 nginx 重定向的主要内容,如果未能解决你的问题,请参考以下文章
带有 nginx 和 https 的闪亮服务器:应用程序的 404