将文件夹中的所有页面重定向到单个 URL(主页)的 RewriteRule 是啥?
Posted
技术标签:
【中文标题】将文件夹中的所有页面重定向到单个 URL(主页)的 RewriteRule 是啥?【英文标题】:What's the RewriteRule to redirect all pages in a folder to a single URL (the Homepage)?将文件夹中的所有页面重定向到单个 URL(主页)的 RewriteRule 是什么? 【发布时间】:2019-06-12 14:34:01 【问题描述】:您好,我想 301 将投资组合文件夹中的所有 url(包括文件夹名称)重定向到主页。
有很多类似的问题/答案,但我能找到的只是简单地从 URL 中删除文件夹。我不想要那个。我需要重定向到单个 URL。即从源 URL 中删除所有内容并重定向到主页。
我要重定向的网址示例
https://example.com/portfolio/
https://example.com/portfolio
https://example.com/portfolio/this-is-a-page
https://example.com/portfolio/this-is-a-another-page
我在下面使用了这个正则表达式,但它不起作用,因为它不是重定向到主页,而是从以下位置重定向: https://example.com/portfolio/this-is-a-page 到 https://example.com/this-is-a-page
我需要它重定向到 https://example.com/ 无论 /portfolio/ 子 url。我究竟做错了什么?
^/?portfolio/(.*)$
https://example.com/$1
【问题讨论】:
【参考方案1】:你可以使用:
^/?portfolio(/|$)
https://example.com/
没有 $1
,因为这个 $1
只是用来复制 URL 的结尾
重写:
RewriteRule ^/?portfolio(/|$) / [NC,R=301,L]
【讨论】:
当我在regex101.com 上测试它时出现了一些模式错误,我也无法让它工作。它重定向到主页,但保留 URL 的子部分,因此转到 404。 这似乎适用于儿童,但不适用于文件夹:RewriteRule ^portfolio/。 / [R=301,L] 谢谢@Croises - 现在可以使用了!我非常感谢你的帮助。我没有意识到我在重写方面也需要帮助,但显然我做到了。我更新了问题以帮助未来的搜索者。以上是关于将文件夹中的所有页面重定向到单个 URL(主页)的 RewriteRule 是啥?的主要内容,如果未能解决你的问题,请参考以下文章
我所有的 WordPress 页面都重定向到 Xampp 的主页