我需要创建一个带有稍微不同信息的镜像网站。
为每个站点生成一个新服务器的工作量太大,而且需要花费大量精力来更新。
大部分内容应该是完整的,但只有一些文件应该稍微调整一下,比如语言文件和一些图像。
我认为这可以通过代理服务器轻松完成,例如乌贼,它也有一个缓存。但我找不到如何改变这些特定的文件。
例如:主站点是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 列表。