我有一个专用的服务器与许多域。有些域名有自己的专用IP,有些IP是域名共享的。
我想为所有的域名和IP设置清漆。
服务器:带cPanel 11.58的CentOS 7.2
你知道有什么cpanel插件吗?或简单的代码或有效的方法,可以自动/轻松地为所有域名/IP设置清漆。
安装varnish后,我将apache端口更改为"8080“。我在varnish.params中将端口更改为"80“,在default.vcl中将端口更改为"8080”。现在varnish适用于服务器的主IP和域。
我试着用下面的方法修改default.vcl,但是之后,当我尝试加载时,varnish给出了错误。我很困惑,并尝试了很多方法来解决它,但不幸的是都没有奏效。
backend example1 {
.host = "5.135.166.39";
.port = "8080";
}
backend example2 {
.host = "46.105.40.241";
.port = "8080";
}
sub vcl_recv {
if (server.ip == "5.135.166.39") {
set req.backend = example1;
} elseif (server.ip == "46.105.40.241") {
set req.backend = example2;
} else {
set req.backend = default;
}
}发布于 2016-09-07 01:40:55
您需要根据域名本身来定义您的条件,而不是使用其ip。假设你有两个doamin:
采用A record 5.135.166.39 www.bar.com和A record 46.105.40.241的www.foo.com
在vcl_recv中,您需要执行以下操作:
if (req.http.host ~ "foo.com") {
set req.backend = example1;
}
if (req.http.host ~ "bar.com") {
set req.backend = example2;
}使用~匹配任何包含foo.bar的url,也可以使用== "www.foo.com"仅匹配www.foo.com,bar.com也是如此
https://stackoverflow.com/questions/39339685
复制相似问题