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

假设你正在重新设计公司的网站。你已决定将内容和样式(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 文件)中:


  1. 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处理的。


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

检查 Apache 日志

原文发布时间为:2017-01-02

本文来自合作伙伴“Linux中国”

时间: 2024-11-10 00:05:57

如何在 Apache 中重定向 URL 到另外一台服务器的相关文章

如何在 Apache 中启用 HTTP/2

如何在 Apache 中启用 HTTP/2 Copyright (C) 2015 greenbytes GmbH 刚发布的 Apache httpd 2.4.17 终于支持 HTTP/2 了.这个页面给出了一些如何构建/部署/配置的建议.目的是为了大家发现 bugs 时能升级它,或者给一些能更好工作的建议. 最后,这会归并回到官方 Apache 文档,这里只会留下一个到那里的链接.暂时我们还没做到. 源码 你可以从这里得到 Apache 版本.Apache 2.4.17 及其更高版本都支持 HT

如何在iframe中的url传一个openid的参数过去

问题描述 <iframesrc="http://www.ledsiaocha.com/ms/ss/objgeb"frameborder="0"width="100%"height="100%"></iframe>如何在iframe中的url传一个openid的参数过去 解决方案

如何在apache中部署多个rails应用(非jruby方式)

问题描述 服务器环境:ubuntu8.04 + apache2 + mod_rails + rails2.1 + mysql 5如果我有demo1.demo2.demo3等多个rails应用想部署在同一服务器中,由于只是内部应用,只能通过ip地址进行访问(无域名),想得到如下访问效果:http://10.10.10.1/demo1http://10.10.10.1/demo2http://10.10.10.1/demo3由于网上只有subdomains方式的配置,达不到我想要的效果.请问该如何配

如何在 Apache 中抵御暴力破解和 DDoS 攻击

对于那些需要在因特网上提供服务或托管主机的人来说,保证您的系统在面对攻击时的安全是一个重要的事情. mod_security(一个开源的用于Web应用入侵检测及防护的引擎,可以无缝地集成到Web服务器)和mod_evasive是两个在服务器端对抗暴力破解和(D)DoS攻击的非常重要的工具. mod_evasive,如它的名字一样,在受攻击时提供避实就虚的功能,它像一个雨伞一样保护Web服务器免受那些威胁. 安装mod_security和mod_evasive来保护Apache 在这篇文章中我们将

如何在apache上安装gitweb实现浏览器访问git服务器

搭建好git服务器(在Linux上用Apache搭建Git服务器),可以checkout, pull, push之后,产生了一个新的需求--走在路上或坐在车上,等人或排队的时候,如果想在平板电脑或手机上浏览代码库中的代码,怎么办呢? 这时gitweb闪亮登场!gitweb是一个支持git的CGI程序,有了它,你可以方便地浏览器Git代码库中的代码. 更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Servers/web/ 下面分享一下如何安

Apache 2.x服务器中的URL重写的配置和应用

1.关于Apache 2.x URL别名的说明和设置: Apache 2.x 服务器中的URL别名规则的文档,它是通过rewrite模块来实现的.能过URL别名规则,我们能看到一个干净的URL,比如可以重写为类似静态网页的地址.比如 LinuxSir.Org 论坛中,每个帖子都有一个静态网页的地址.干净的URL,对于Google搜索引擎来说是极为受用的,能更快的收录. 这个重写,是通过Apache 2.x 内部实现的,只是表面上把Web应用程序的URL变的干净一点,原始的URL还是一样有效. 1

IIS中利用重定向URL来防止Access数据库被下载的方法

对于ASP+Access开发的网站,安全性最最让人担忧的就是Access数据库可以随意下载,当然我们可以通过一些修改数据库名称的手段进行尽量的防护,但归根结底是不彻底的.所以今天就来谈谈在IIS中利用重定向URL来防止Access数据库被下载的方法. 此方法需要你有IIS的管理权限,如果你使用的是虚拟主机,那估计没有办法了,呵呵.这里假设你有IIS的管理权限. 1.首先打开Internet 信息服务(IIS)管理器,在Internet 信息服务(IIS)管理器左边窗口中找到你数据库所在的文件夹,

如何在eclipse中跑apache kylin;

问题描述 如何在eclipse中跑apache kylin: 用eclipse导入kylin的jar包,然后通过eclipse生成cube,而且能够在web端检测到,能做到吗? 解决方案 http://www.mamicode.com/info-detail-936729.html

android-如何在 edittext 中获得值然后放在一个 URL 中?

问题描述 如何在 edittext 中获得值然后放在一个 URL 中? private Button btnLogin; private EditText txtPub; private EditText txtPriv; final Context context = this; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVi