设想
我正在管理一个已移至基于 Wordpress 的设置的网站,但无法访问 Wordpress 中的所有管理工具(它是外部托管/管理的),但我确实可以访问 htaccess 文件。现在,我需要做两件事:
- 将旧页面重定向到新的 url 结构。
- 将所有 www 调用重定向到非 www。
挑战
但是,我想通过以下方式完成此操作:
- 每次调用最少可能的重定向(最好只有 1 个)。
- 规则重复有限。
- 有点可读性(不仅仅是一个内联正则表达式处理这一切)。
- 全部在 htaccess 中单独编辑。
让我很难过的是,当它既是旧网址,又以 www 为前缀时,将重定向保持在最低限度。
我的下一个最大问题是,我想使用重写映射,但似乎你必须从外部加载一些东西,而不是在我更喜欢的 htaccess 文件中定义字典。
更多细节
- 我不是使用重写引擎的专家,所以我可能在这里遗漏了一个简单的解决方案。
- 旧网站的结构很简单
/index.php?page=<pageName>
。 - 新网站使用 seo 友好的 url
/a-new-url-example/
。 - 两个例子可能是:
- 从
mydomain.com/index.php?page=boots
到mydomain.com/boots/
- 从
www.mydomain.com/index.php?page=shoes
到mydomain.com/shiny-shoes/
(需要某种地图来处理shoes
->shiny-shoes
)
- 从
- 我自己电脑上的当前设置不允许我在本地测试它(与其他项目有很多冲突),所以目前我正在使用http://htaccess.madewithlove.be/测试设置。
- htaccess 文件的当前内容(在 pastebin 上,因为代码在这里一直被解释为其他内容)。