Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flask 如果一个网站复制了我的网站(可能是恶意的),我应该给出什么状态码_Flask - Fatal编程技术网

Flask 如果一个网站复制了我的网站(可能是恶意的),我应该给出什么状态码

Flask 如果一个网站复制了我的网站(可能是恶意的),我应该给出什么状态码,flask,Flask,我有一个问题,一个坏演员的几个网站都在模仿我的商业网站,在谷歌搜索结果中得分更高 我看到了关于处理此问题的两个堆栈交换链接: 解决方案包括将该网站重定向到正确的网站,以及提供一个状态代码,以使该网站在排名中混乱。此外,他们还建议建立“基于名称的虚拟主机”,我也在研究这个问题(我在我的Web服务器论坛上发布)。 一个建议是使用301来表示网站永久移动,并获得他们对我的网站的排名。 我看到308是一样的,阻止了从https:到http的更改 我编写了以下简单的代码,它似乎解决了我在本地机器上的问题

我有一个问题,一个坏演员的几个网站都在模仿我的商业网站,在谷歌搜索结果中得分更高

我看到了关于处理此问题的两个堆栈交换链接:

解决方案包括将该网站重定向到正确的网站,以及提供一个状态代码,以使该网站在排名中混乱。此外,他们还建议建立“基于名称的虚拟主机”,我也在研究这个问题(我在我的Web服务器论坛上发布)。 一个建议是使用301来表示网站永久移动,并获得他们对我的网站的排名。 我看到308是一样的,阻止了从https:到http的更改

我编写了以下简单的代码,它似乎解决了我在本地机器上的问题。它确实正确地重定向到我的网站。代码308似乎是正确的代码吗?这是这种方法的缺点吗

from functools import wraps
from flask import Request, Flask, redirect


def check_url(function):
    @wraps(function)
    def decorated_function(*args, **kwargs):
        # Check the Request
        if Request.host != 'mywebsite.com':
            # throw HTTP code 301 if it is not mywebsite.com
            return redirect("http://www.mywebsite.com", 308)
        return function(*args, **kwargs)
    return decorated_function

app = Flask(__name__)

@app.route('/')
@check_url
def index():
    return "Hello World"

if __name__ == '__main__':
    app.run()