【发布时间】:2017-10-15 00:39:13
【问题描述】:
在我以前运行 apache 的服务器上,我有一些 htaccess 规则帮助转发特定模式的 URL,这些模式将 404 提供给固定模式。
很久以前我网站的网址是http://domainname/articlename,然后我将其更改为http://domainname/category/articlename
现在的问题是 google 拥有的旧链接返回 404,我想拦截任何没有类别的 URL 并插入假类别,然后我的 wordpress 安装可以解析 URL。
所以我正在寻找一个解决这个问题的 nginx 解决方案,我认为它会在配置文件中的某个地方使用这个 URL
http://www.criticalhit.net/prey/(给出 404)
并将其更改为
http://www.criticalhit.net/fixed/prey/
然后正确解决。
【问题讨论】:
-
是文章名称列表还是有规律?您可以将地图用于任意列表。请参阅this answer 获取指导。
-
有超过 4000 篇文章,所以它是相当的列表。我想要捕捉的模式是任何缺少类别部分且不在我提供的特定列表中的 URL。所以我可以排除某些 URL 获取正在添加的 URL 的中间部分
-
您可以使用排除 URL 的映射和
if块返回重写的链接,或为排除的模式构造locations并从location /块激活重写。跨度> -
我很乐意排除我的网址......但是重写和位置块会是什么样子?我对 nginx 很陌生,看不到如何获取缺少中间部分的 URL
标签: wordpress .htaccess ubuntu nginx