Apache Amazon CloudFront IP的htaccess重定向规则

Apache Amazon CloudFront IP的htaccess重定向规则,apache,.htaccess,mod-rewrite,amazon,amazon-cloudfront,Apache,.htaccess,Mod Rewrite,Amazon,Amazon Cloudfront,我已经使用CloudFront在joomla网站上安装了一个CDN插件 除了来自CloudFront的所有请求都被重定向到网站域的www版本之外,所有请求似乎都工作正常。 这似乎是由于非www->www-redirec规则造成的 根据本文,我计算了CloudFront使用的IP范围: 我已获得以下IP范围: 主机名:54.239.128.1 HostMax:54.239.191.254 主机名:54.240.128.1 HostMax:54.240.191.254 主机名:204.246.16

我已经使用CloudFront在joomla网站上安装了一个CDN插件

除了来自CloudFront的所有请求都被重定向到网站域的www版本之外,所有请求似乎都工作正常。 这似乎是由于非www->www-redirec规则造成的

根据本文,我计算了CloudFront使用的IP范围:

我已获得以下IP范围:

主机名:54.239.128.1 HostMax:54.239.191.254

主机名:54.240.128.1 HostMax:54.240.191.254

主机名:204.246.168.1 HostMax:204.246.171.254

主机名:204.246.174.1 HostMax:204.246.175.254

主机名:204.246.176.1 HostMax:204.246.191.254

主机名:205.251.192.1 HostMax:205.251.223.254

主机名:205.251.249.1 HostMax:205.251.249.254

主机名:205.251.250.1 HostMax:205.251.251.254

HostMin:205.251.252.1 HostMax:205.251.253.254

主机名:205.251.254.1 HostMax:205.251.254.254

主机名:216.137.32.1 HostMax:216.137.63.254

最后,我整理了以下重写条件,以阻止规则重定向来自CloudFront的请求:

RewriteCond %{REMOTE_ADDR} !^204\.246\.16([4567])\.\d{1,3}
RewriteCond %{REMOTE_ADDR} !^54\.2(39|40)\.(12[89]|1[3-8][0-9]|19[01])\.\d{1,3}
RewriteCond %{REMOTE_ADDR} !^204\.246\.(16[89]|17[01])\.\d{1,3}
RewriteCond %{REMOTE_ADDR} !^204\.246\.1(7[4-9]|8[0-9]|9[01])\.\d{1,3}
RewriteCond %{REMOTE_ADDR} !^54\.239\.(249|25[0-4])\.\d{1,3}
RewriteCond %{REMOTE_ADDR} !^205\.251\.(19[2-9]|2[01][0-9]|22[0-3])\.\d{1,3}
RewriteCond %{REMOTE_ADDR} !^216\.137\.(3[2-9]|[45][0-9]|6[0-3])\.\d{1,3}
然而,它似乎不起作用,CloudFront请求仍然被重定向到网站的www版本

有人,有什么建议吗?
谢谢大家!

添加“www”和非“www”主机名作为Cloudfront发行版的来源。摆脱重写规则。这将解决您的问题。

谢谢您的回复!你的意思是:RewriteCond%{REMOTE\u ADDR}^(www.\.|)204\.246\.16([4567])。{1,3}你能澄清一下我们应该取消什么重写规则吗?多谢各位@超级用户我都喜欢。你想做的不是个好主意。这就是为什么我建议将两个主机名都指定为源主机名的原因。哦,刚刚收到你的评论。请提供一个“将两个主机名都指定为源”的示例?非常感谢您的建议还有一个细节,如果我理解正确,您建议删除所有重写规则,但这是不可能的,您将如何进行非www到www重定向?很多重定向规则都是为了阻止常见的漏洞攻击,你会怎么处理呢?我只是想跟进一下。如果您能澄清您的评论,我将不胜感激。再次感谢你!