0

我刚刚在 Apache/2.4.7 (Ubuntu) 上使用Passenger 部署到生产Rails 4 应用程序,并在24 小时内发现了一些与我的站点相同的站点。

他们正在使用某种 DNS 转发,因为一切正常,包括网站上的表格。

这是我的 apache 虚拟主机:

<VirtualHost mysite.com:80>
ServerName www.mysite.com
ServerAlias mysite.com
DocumentRoot /home/deploy/mysite/public
RailsEnv production
<Directory /home/deploy/mysite/public>
    Allow from all
    Options -MultiViews
    Require all granted 
</Directory>
RewriteEngine on   
RewriteCond %{HTTP_HOST} !^(www)\.
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

我不知道如何停止来自其他域的请求,我尝试删除“全部允许”和“要求全部授予”,但这会停止网站甚至从正确的域工作,并且乘客需要这些设置才能工作。

我有点卡住了,所以如果您有任何建议,我很乐意尝试。

4

1 回答 1

0

原来来自不存在的虚拟主机的所有请求都被路由到您的第一个可用虚拟主机。

为了阻止任何人使用 DNS 转发劫持您的网站,您需要启用一个默认虚拟主机,该主机首先加载(使用默认名称 000-default,可以解决问题)并充当包罗万象并指向禁止页面,甚至更好地创建一个简单的 html 页面,其中包含一些指向您网站的链接。

于 2014-05-21T04:19:47.510 回答