仅允许通过适当的域查看站点

时间:2016-10-14 17:09:35

标签: apache url virtualhost domain-name

我使用虚拟主机的标准方法在同一个Apache服务器(和IP地址)上托管多个站点。所以我有以下文件夹:import { FormControl } from '@angular/forms' /var/www/website1.com/等等。

我知道如何更改DocumentRoot,以便某个域的请求指向相应的目录,但问题是该网站也可以通过/var/www/website2.com/访问,其中123.456.789.000/website1.com/是服务器的IP地址。

这特别糟糕,因为它是使用Laravel构建的,因此DocumentRoot实际上是123.456.789.000,主/var/www/website1.com/public目录是Laravel存储配置文件和其他私有文件的位置。目前可以通过访问IP地址来查看这些文件(幸好这不是一个关键项目)。

那么我如何确保只能在website1.com而不是website.com访问网站?我不一定希望全局适用 - 我希望能够在每个站点的网站上选择是否只能通过其正确的域名访问它。

1 个答案:

答案 0 :(得分:0)

您需要添加一个重定向,将客户端发送到您的规范'域名

RewriteCond %{HTTP_HOST}   !^example\.com [NC]
RewriteRule ^/(.*)         https://example.com/$1 [R=301,L]

(我对Laravel'一无所知,但在可访问Web的目录中存储配置/私有文件听起来真的很糟糕)