具有固定 URL 的代理会改变某些文件类型吗?

具有固定 URL 的代理会改变某些文件类型吗?

我需要创建一个带有稍微不同信息的镜像网站。
为每个站点生成一个新服务器的工作量太大,而且需要花费大量精力来更新。
大部分内容应该是完整的,但只有一些文件应该稍微调整一下,比如语言文件和一些图像。

我认为这可以通过代理服务器轻松完成,例如乌贼,它也有一个缓存。但我找不到如何改变这些特定的文件。

例如:主站点是www.site1.com

www.site1.com    --- PROXY -->    spa.site1.com (altered images and lang)
www.site1.com    --- PROXY -->    fra.site1.com (altered images and lang)

对此最好的方法是什么,或者我应该使用带有 mod_proxy 和 mod_substitute 的 apache 服务器?

谢谢

答案1

示例方法,众多可能方法之一。

<VirtualHost *:80>
  ServerName example.com
  DocumentRoot /var/www/html
  Alias "/lang" "/var/www/en"
</VirtualHost>
<VirtualHost *:80>
  ServerName es.example.com
  DocumentRoot /var/www/html
  Alias "/lang" "/var/www/es"
</VirtualHost>
<VirtualHost *:80>
  ServerName fr.example.com
  DocumentRoot /var/www/html
  Alias "/lang" "/var/www/fr"
</VirtualHost>

如果您无法将所有特定于变体的文件合并到一个(几个)目录中,那么可以考虑使用RewriteCond/重写 URL RewriteRule

或者使用 HAProxy http-request replace-path <whatever> if <condition>,其中一个条件可以是-f <lookupfile>需要lookupfile替换的 URL 列表。

相关内容