如何在 Apache 中重定向 URL 到另外一台服务器

发布于 2024-10-30 16:19:01 字数 1965 浏览 7 评论 0

如我们前面两篇文章( 使用 mod_rewrite 执行内部重定向基于浏览器来显示自定义内容 )中提到的,在本文中,我们将解释如何在 Apache 中使用 mod_rewrite 模块重定向对已移动到另外一台服务器上的资源的访问。

假设你正在重新设计公司的网站。你已决定将内容和样式(HTML 文件、JavaScript 和 CSS)存储在一个服务器上,将文档存储在另一个服务器上 - 这样可能会更稳健。

建议阅读: 5 个提高 Apache Web 服务器性能的提示

但是,你希望这个更改对用户是透明的,以便他们仍然能够通过之前的网址访问文档。

在下面的例子中,名为 assets.pdf 的文件已从 192.168.0.100 (主机名: web )中的 /var/www/html 移动到 192.168.0.101 (主机名: web2 )中的相同位置。

为了让用户在浏览到 192.168.0.100/assets.pdf 时可以访问到此文件,请打开 192.168.0.100 上的 Apache 配置文件并添加以下重写规则(或者也可以将以下规则添加到 .htaccess 文件 )中:

RewriteRule "^(/assets\.pdf$)" "http://192.168.0.101$1"  [R,L]

其中 $1 占位符,代表与括号中的正则表达式匹配的任何内容。

现在保存更改,不要忘记重新启动 Apache,让我们看看当我们打开 192.168.0.100/assets.pdf ,尝试访问 assets.pdf 时会发生什么:

建议阅读: 25 个有用的网站 .htaccess 技巧

在下面我们就可以看到,为 192.168.0.100 上的 assets.pdf 所做的请求实际上是由 192.168.0.101 处理的。

# tail -n 1 /var/log/apache2/access.log

Check Apache Logs

检查 Apache 日志

在本文中,我们讨论了如何对已移动到其他服务器的资源进行重定向。 总而言之,我强烈建议你看看 mod_rewrite 指南和 Apache 重定向指南 ,以供将来参考。

一如既往那样,如果您对本文有任何疑虑,请随时使用下面的评论栏回复。 我们期待你的回音!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

舞袖。长

暂无简介

0 文章
0 评论
24 人气
更多

推荐作者

xu362930323

文章 0 评论 0

缱倦旧时光

文章 0 评论 0

qq_eXruk9

文章 0 评论 0

遂心如意

文章 0 评论 0

guojiayue1

文章 0 评论 0

愿与i

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文