防止别人反向代理我的网站

                           
2020年04月17日

当别人反向代理我的网站还用上了 CDN ,这该怎么办呢?

【解决方法】

方法一:在网站的配置文件的 server 适当位置添加以下代码(允许一个域名)

if ($host !~ a.com) {
           return 444;
       }

举个例子,仅允许 a.com 访问

【注意】网站的配置文件的 server 中有很多代码,举例只进行嵌入位置示范。

server
{

    listen 80;
    server_name a.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/a.com;

       if ($host !~ a.com) {
           return 444;
       }

}

方法二:在网站的配置文件的 server 适当位置添加以下代码(允许多个域名)

set $flag 0;
if ($host != a.com) {
        set $flag "${flag}1";
}

if ($host != b.com){
        set $flag "${flag}1";
}

if ($flag = "011"){
        return 444;
}

举个例子,允许 a.com 和 b.com 访问

【注意】网站的配置文件的 server 中有很多代码,举例只进行嵌入位置示范。

server
{

    listen 80;
    server_name a.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/a.com;

set $flag 0;
if ($host != a.com) {
        set $flag "${flag}1";
}

if ($host != b.com){
        set $flag "${flag}1";
}

if ($flag = "011"){
        return 444;
}

}

冷场莹