是否可以在 .htaccess 文件中使用通配符进行批量移动?
我正在重新设计我的网站,将重命名很多目录,并且需要一种简单的方法来为所有这些页面编写 .htaccess 重定向。我希望有一个不包含很长文件列表的解决方案。我的 .htaccess 文件很大。
I am reworking my website, going to be renaming a lot of directories, and need a simple way to write my .htaccess redirects for all of those pages. I am hoping for a solution that does not include a very long list of files. My .htaccess file is huge as it is.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 mod_alias 或 mod_rewrite 用于重定向。 mod_rewrite 适用于正则表达式,mod_alias 可适用于正则表达式和路径前缀。
以下是您想要将
/foo/...
重写为/bar/...
的一些示例:请注意,mod_alias 和 mod_rewrite 对它们的正则表达式模式有不同的要求。 mod_alias 始终需要完整的 URL 路径。但对于 mod_rewrite ,这取决于您是在 .htaccess 文件中还是在服务器配置/虚拟主机部分中使用它。在 .htaccess 文件中,您需要编写不带每个目录路径前缀的模式(如果是文档根目录,则为
/
,如果是/quux/
,则为/quux/
)。You can use mod_alias or mod_rewrite for your redirecting. mod_rewrite works with regular expressions and mod_alias can work on both regular expression and path prefixes.
Here are some examples for when you want to rewrite
/foo/…
to/bar/…
:Note that mod_alias and mod_rewrite have different requirements for their regular expressions patterns. mod_alias does always require the full URL path. But with mod_rewrite it depends on whether you use it in a .htaccess file or in the server configuration/virtual host section. In a .htaccess file, you need to write the pattern without the per-directory path prefix (in case of the document root just
/
, in case of/quux/
it’s/quux/
).